Skip to main content

XML layout overlapping AlertDialog"s Title



I am developing an Android application where the user is asked to "setup" before recording data. This is accomplished using an AlertDialog that inflates an XML layout, using such code:







final AlertDialog.Builder builder = new AlertDialog.Builder(this);



LayoutInflater vi = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

View v = vi.inflate(R.layout.setup, null);



builder.setView(v);







On an emulator or a 2.3.3 device, it looks fine:


Emulator or 2.3.3 Appearance





However, the title that reads "Configure Options" is overlapped on a 2.1.1 device (which has a smaller screen). It looks more or less like this:


Appearance on a 2.1.1 Device


Does anyone know what the potential problem may be? The XML layout is scroll enabled so that if it doesn't fit in the dialog, the user can scroll (which works fine in the emulator and 2.3.3, but not 2.1.1). Perhaps there is some way to make the AlertDialog fit the whole screen using Java code? Thank you for the help.





EDIT:


setup.xml (with names of some things edited out):







<TextView android:layout_height="wrap_content"

android:layout_width="fill_parent"

android:id="@+id/EDITED OUT"

android:text="@string/EDITED OUT"

android:gravity="center_horizontal"

android:textSize="16dip"

android:textColor="@android:color/black"

android:paddingTop="12dip"/>



<RelativeLayout android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="@android:color/white">



<TextView android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:id="@+id/nameLabel"

android:text="EDITED OUT"

android:textSize="18sp"

android:textColor="@android:color/black"

android:paddingTop="12dip"/>

<EditText android:text=""

android:layout_width="fill_parent"

android:inputType="text"

android:id="@+id/sessionName"

android:layout_height="wrap_content"

android:layout_alignParentTop="true"

android:layout_toRightOf="@+id/nameLabel">

<requestFocus/>

</EditText>



</RelativeLayout>



<RelativeLayout android:orientation="vertical"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:background="@android:color/white"

android:paddingBottom="5dp">



<TextView android:text="EDITED OUT"

android:id="@+id/ExperimentLabel"

android:textSize="18sp"

android:layout_width="wrap_content"

android:paddingTop="15dip"

android:layout_height="wrap_content"

android:textColor="@android:color/black"

android:layout_alignParentLeft="true"/>



<EditText android:id="@+id/ExperimentInput"

android:layout_width="60sp"

android:layout_toRightOf="@id/ExperimentLabel"

android:inputType="phone"

android:digits="1234567890"

android:singleLine="true"

android:layout_height="wrap_content"/>



<Button android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:layout_alignParentRight="true"

android:layout_toRightOf="@id/ExperimentInput"

android:text="Browse..."

android:id="@+id/BrowseButton"/>







</RelativeLayout>



<TextView android:layout_height="wrap_content"

android:layout_width="fill_parent"

android:id="EDITED OUT"

android:text="EDITED OUT"

android:gravity="center_horizontal"

android:textSize="16dip"

android:textColor="@android:color/black"

android:paddingTop="12dip"/>



<RelativeLayout android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="@android:color/white">



<TextView android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:id="@+id/studentLabel"

android:text="EDITED OUT"

android:textSize="18dip"

android:textColor="@android:color/black"

android:paddingTop="12dip"/>

<EditText android:text="1"

android:layout_width="fill_parent"

android:inputType="number"

android:id="@+id/studentNumber"

android:layout_height="wrap_content"

android:layout_alignParentTop="true"

android:layout_toRightOf="@+id/studentLabel">

</EditText>



</RelativeLayout>



<RelativeLayout android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="@android:color/white">



<TextView android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:id="@+id/rideNameLabel"

android:text="EDITED OUT"

android:textSize="18dip"

android:textColor="@android:color/black"

android:paddingTop="12dip"/>



<Spinner

android:id="@+id/rides"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:prompt="EDITED OUT"

android:layout_toRightOf="@+id/rideNameLabel"

android:layout_alignParentTop="true"/>



</RelativeLayout>



<LinearLayout android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="@android:color/white">



<Button

android:id="@+id/pictureButton"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Take a Picture"

android:layout_weight="1"/>



<Button

android:id="@+id/videoButton"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Take a Video"

android:layout_toRightOf="@id/pictureButton"

android:layout_weight="1"/>

</LinearLayout>







(This won't show up at the bottom of the code for some reason... but this is at the very end):







</ScrollView>




Comments

Popular posts from this blog

Why is this Javascript much *slower* than its jQuery equivalent?

I have a HTML list of about 500 items and a "filter" box above it. I started by using jQuery to filter the list when I typed a letter (timing code added later): $('#filter').keyup( function() { var jqStart = (new Date).getTime(); var search = $(this).val().toLowerCase(); var $list = $('ul.ablist > li'); $list.each( function() { if ( $(this).text().toLowerCase().indexOf(search) === -1 ) $(this).hide(); else $(this).show(); } ); console.log('Time: ' + ((new Date).getTime() - jqStart)); } ); However, there was a couple of seconds delay after typing each letter (particularly the first letter). So I thought it may be slightly quicker if I used plain Javascript (I read recently that jQuery's each function is particularly slow). Here's my JS equivalent: document.getElementById('filter').addEventListener( 'keyup', function () { var jsStart = (new Date).getTime()...

Is it possible to have IF statement in an Echo statement in PHP

Thanks in advance. I did look at the other questions/answers that were similar and didn't find exactly what I was looking for. I'm trying to do this, am I on the right path? echo " <div id='tabs-".$match."'> <textarea id='".$match."' name='".$match."'>". if ($COLUMN_NAME === $match) { echo $FIELD_WITH_COLUMN_NAME; } else { } ."</textarea> <script type='text/javascript'> CKEDITOR.replace( '".$match."' ); </script> </div>"; I am getting the following error message in the browser: Parse error: syntax error, unexpected T_IF Please let me know if this is the right way to go about nesting an IF statement inside an echo. Thank you.