Android Layout issues - android

In my layout this is not moving the button to the right of the screen.
What am I missing?
The button is within a linear layout.
But has its own relative layout.

Try this, it works for me.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:id="#+id/relativeLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
android:orientation="vertical"
android:id="#+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true">
<Button
android:text="Button"
android:id="#+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right">
</Button>
</LinearLayout>
</RelativeLayout>

Something like this for main.xml.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="right" >
<RelativeLayout
android:id="#+id/relativeLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button android:id="#+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
android:layout_alignParentRight="true"
android:text="Right Button"
</Button>
</RelativeLayout>
</LinearLayout>
Cheers.

Set the RelativeLayout android:width to "fill_parent", for the LinearLayout set the android:layout_gravity property to "right"

Related

Scrollview empty space issue

I wanted to create the guideline in my apps,but i found that this empty space is on top of my image, how do i delete it to let my image stay on the top?Below is my layout.xml code.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".InfoActivity">
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<ImageView
android:id="#+id/slide1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="#drawable/slide1"
android:contentDescription="firstslide" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="#string/HELLO"
android:id="#+id/textView" />
</LinearLayout>
</ScrollView>
</LinearLayout>
Try adding this in your ImageView.
android:scaleType="fitStart"
Hope it helps.
I fixed it with android:scaleType="fitXY"

Unable to align ImageView to bottom of RelativeLayout

I've read several tutorials on how to do this, but for whatever reason, my image won't budge from the center of the screen. The ninjas image is 1080x517px
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:weightSum="1"
android:background="#color/white">
<ImageView
android:id="#+id/ninjas"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="#drawable/ninjas"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"/>
</RelativeLayout>
From what I can tell, this is correct. Any suggestions?
Thanks in advance
You make the image fill the parent currently. Change
android:layout_width="fill_parent"
android:layout_height="fill_parent"
to
android:layout_width="wrap_content"
android:layout_height="wrap_content"
try this
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff" >
<ImageView
android:id="#+id/ninjas"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:src="#drawable/ic_launcher" />
</RelativeLayout>
Try changing
<ImageView
android:id="#+id/ninjas"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="#drawable/ninjas"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"/>
to
<ImageView
android:id="#+id/ninjas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="#drawable/ninjas"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"/>
At present your ImageView is occupying all the space in its parent. After changing layout_width and layout_height to wrap_content it will only occupy as much space as size of #drawable/ninjas
// Try this way,hope this will help you to solve your problem...
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#color/white"
android:gravity="bottom|right"
android:padding="5dp">
<ImageView
android:id="#+id/ninjas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="#drawable/ninjas"
android:adjustViewBounds="true"/>
</LinearLayout

How can I create and position a container over a Layout?

In Xamarin, how can I create and position a container over a Layout?
Here is my Layout XML code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<FrameLayout
android:id="#+id/mapWithOverlay"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>
How can I create a container that has a TextView and a Button and then position this container where I want on top of the FrameLayout?
Thanks in advance
Use Relative Layout, you can arrange the elements where ever you want.
Check here Relative Layout
Here you go:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:padding="5dip" >
<LinearLayout
android:id="#+id/thumbnail"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="#+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<Button
android:id="#+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</LinearLayout>
<FrameLayout
android:id="#+id/mapWithOverlay"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_below="#+id/thumbnail" />
</RelativeLayout>

How to prevent other View being pushed out of the screen

this is the example XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content" android:orientation="vertical"
android:layout_margin="5dip" android:background="#FF992222">
<ScrollView android:layout_height="wrap_content"
android:layout_width="fill_parent">
<LinearLayout android:layout_height="wrap_content"
android:orientation="vertical" android:layout_width="fill_parent">
<TextView android:layout_width="wrap_content" android:text="TextView"
android:layout_height="wrap_content" android:textSize="24dip"></TextView>
</LinearLayout>
</ScrollView>
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content" android:orientation="vertical"
android:layout_margin="5dip" android:background="#FF555555">
<TextView android:layout_width="wrap_content" android:text="TextView"
android:layout_height="wrap_content" android:textSize="24dip"></TextView>
</LinearLayout>
</LinearLayout>
The result is like this :
If you notice, the text in upper LinerLayout are wrapped in LinearLayout and ScrollView.
If the upper content keep added, it will look like this
Bottom Linearlayout will be pushed out of the screen before the ScrollView become active and make the first content become scrollable.... And I don't want that to be happened...
What should I do to make the Scrollview before the bottom View being pushed out of the screen like this :
(this is edited image and not created by Android Layout editor)
Hope the question clear enough.. Thanks :)
It took me an insane amount of time to figure this out, there is no info on the net, but I finally got it. Enjoy!
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="#+id/mainlayout"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:orientation="vertical"
>
<LinearLayout
android:id="#+id/LL"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:layout_centerVertical="true"
android:orientation="vertical"
android:weightSum="1" >
<ScrollView
android:id="#+id/scrollView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="#id/TV1"
android:layout_margin="5dp"
android:layout_weight="1"
android:fillViewport="true" >
<TextView
android:id="#+id/TV2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center" />
</ScrollView>
<LinearLayout
android:id="#+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="5dp"
android:layout_weight="0"
android:orientation="horizontal" >
<TextView android:layout_width="wrap_content" android:text="TextView"
android:layout_height="wrap_content" android:textSize="24dip"></TextView>
</LinearLayout>
</LinearLayout>
Try this. The key is using layout_weight within the linear layout.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ScrollView android:layout_height="0dp"
android:layout_weight="1"
android:layout_width="fill_parent">
....
</ScrollView>
<TextView android:layout_width="fill_parent" android:text="TextView"
android:layout_height="wrap_content" android:textSize="24dip"/>
</LinearLayout>
Well, if I understand you question clearly, you want the TextView in grey to remain stationary, while the textViews in red can be scrolled around, correct me if I'm wrong here. If thats what you want, then you can use RelativeLayout to achieve that. Following is the code to produce an output like:
http://imageshack.us/photo/my-images/836/device20111011012652.png/
The ListView entries are scrollable while the button(in your case it should be a TextView) stays where it is.
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView android:id="#android:id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="#+id/newtask" android:layout_alignParentTop="true">
</ListView>
<Button android:layout_width="fill_parent"
android:id="#+id/newtask"
android:layout_height="wrap_content"
android:text="Add New Task" android:layout_alignParentBottom="true">
</Button>
</RelativeLayout>
Just change the bottom button to a TextView and it would match what you wanted.

I want to display buttons at the bottom of the screen and the buttons are inside linearLayout4,can someone pls tell me in this, am frustated now

Problem with last linear layout containing buttons,I want to display my last linear layout i.e. of id-linearlayout4 at the bottom of the screen,so that my buttons should come at the bottom...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#drawable/pic5">
<LinearLayout android:orientation="vertical" android:id="#+id/linearLayout1" android:layout_width="match_parent" android:layout_height="60dip"></LinearLayout>
<LinearLayout android:layout_width="match_parent" android:id="#+id/linearLayout5" android:layout_height="wrap_content">
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="#+id/textView2"
android:layout_marginLeft="19dp"
android:id="#+id/quesname"
android:textSize="20dip"
android:textColor="#000000"></TextView>
</LinearLayout>
<LinearLayout android:id="#+id/linearLayout3"
android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_width="match_parent">
<ScrollView android:id="#+id/ScrollView01"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout android:id="#+id/linearLayout2"
android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_width="match_parent">
<LinearLayout android:id="#+id/optionslayout"
android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_width="match_parent">
</LinearLayout>
</LinearLayout>
</ScrollView>
<LinearLayout android:layout_height="wrap_content" android:id="#+id/linearLayout4" android:layout_width="match_parent" android:gravity="bottom">
<Button android:id="#+id/prev" android:layout_width="100dip" android:text="Previous" android:layout_height="wrap_content"></Button>
<Button android:id="#+id/next" android:layout_marginLeft="120dip" android:layout_width="100dip" android:text="Next" android:layout_height="wrap_content"> </Button>
</LinearLayout>
</LinearLayout>
</LinearLayout>
you can insert a
<View android:layout_height="0dp" android:layout_width="0dp" android:layout_weight="1"/>
right before your buttons.
Or use a relative layout with alignParentBottom="true"
You need a RelativeLayout instead of a LinearLayout as parent; then simply drag the buttons in the layout-GUI to the bottom and they should stick there. When i am at home i am able to post "real" example code.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout …>
<!-- your posted code -->
Dragging the button's layout parent to the bottom will produce:
alignParentBottom="true"

Categories

Resources