Android 如何将对话框窗口包装为内容?

Android 如何将对话框窗口包装为内容?,android,android-layout,android-alertdialog,android-dialog,android-windowmanager,Android,Android Layout,Android Alertdialog,Android Dialog,Android Windowmanager,我正在开发一个对话框,它应该收缩到它的内容,因此,我想在一个普通视图中获得类似于wrap\u content的行为,但是对于一个普通的对话框。 这就是我想在对话框窗口中显示的内容 在对话框窗口中,应如下所示 但这就是我真正得到的 你能告诉我我做错了什么吗? 我先谢谢你 这是我的密码 ... final Dialog dialog = new Dialog(this); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog

我正在开发一个对话框,它应该收缩到它的内容,因此,我想在一个普通视图中获得类似于
wrap\u content
的行为,但是对于一个普通的
对话框
。 这就是我想在对话框窗口中显示的内容

在对话框窗口中,应如下所示

但这就是我真正得到的

你能告诉我我做错了什么吗?

我先谢谢你

这是我的密码

...
final Dialog dialog = new Dialog(this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
dialog.setContentView(R.layout.advanced_options);
dialog.setTitle(titleId);

// Stuff referred to builder
AlertDialog.Builder builder ...
...

int type = WindowManager.LayoutParams.TYPE_INPUT_METHOD;
WindowManager.LayoutParams w_layout_params = new WindowManager.LayoutParams(type);

dialog.getWindow().setAttributes(w_layout_params );
...
builder.create();
dialog.show();
advanced_options.xml
Layout

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relLayout_advancedOptions"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@drawable/border_advanced_options"
    android:divider="?android:listSeparatorTextViewStyle"
    android:showDividers="" >    

    <TextView
        android:id="@+id/speed_limit"
        style="?android:attr/listSeparatorTextViewStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginTop="20dp"
        android:text="@string/speed_limit"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@color/black"
        android:textSize="14dp" />

    <TextView
        android:id="@+id/speed_limit_alert"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/speed_limit"
        android:layout_marginLeft="15dp"
        android:layout_marginTop="20dp"
        android:text="@string/speed_limit_alert"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />


    <TextView
        android:id="@+id/percent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/speed_limit_alert"
        android:layout_toRightOf="@+id/speed_limit_alert_edit_text"
        android:text="@string/percentage_symbol"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/minimum_speed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/speed_limit_alert"
        android:layout_below="@+id/speed_limit_alert_edit_text"
        android:layout_marginTop="15dp"
        android:text="@string/minimum_speed"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <EditText
        android:id="@+id/minimum_speed_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/minimum_speed"
        android:layout_alignBottom="@+id/minimum_speed"
        android:layout_alignLeft="@+id/speed_limit_alert_edit_text"
        android:ems="3"
        android:inputType="number"
        android:textColor="@color/black"
        android:text="6" />

    <TextView
        android:id="@+id/minimum_speed_unit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/minimum_speed"
        android:layout_alignLeft="@+id/percent"
        android:text="@string/metric_speed_unit"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/maximum_speed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/minimum_speed"
        android:layout_below="@+id/minimum_speed_edit_text"
        android:layout_marginTop="15dp"
        android:text="@string/maximum_speed"
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/black"/>

    <EditText
        android:id="@+id/maximum_speed_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/maximum_speed"
        android:layout_alignBottom="@+id/maximum_speed"
        android:layout_alignLeft="@+id/minimum_speed_edit_text"
        android:ems="3"
        android:inputType="number"
        android:textColor="@color/black"
        android:text="18" />

    <TextView
        android:id="@+id/maximum_speed_unit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/maximum_speed"
        android:layout_toRightOf="@+id/maximum_speed_edit_text"
        android:text="@string/metric_speed_unit"
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/black"/>

    <TextView
        android:id="@+id/mobile_device_performance"
        style="?android:attr/listSeparatorTextViewStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/maximum_speed_edit_text"
        android:layout_marginTop="20dp"
        android:gravity="center_vertical"
        android:text="@string/mobile_device_performance"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@color/black"
        android:textSize="14dp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/maximum_number_objects"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/maximum_speed"
        android:layout_below="@+id/mobile_device_performance"
        android:layout_marginTop="20dp"
        android:text="@string/maximum_objects_in_view"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <EditText
        android:id="@+id/maximum_number_objects_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/maximum_number_objects"
        android:layout_alignBottom="@+id/maximum_number_objects"
        android:layout_marginLeft="10dp"
        android:layout_toRightOf="@+id/maximum_number_objects"
        android:ems="3"
        android:inputType="number"
        android:text="450"
        android:textColor="@color/black" />

    <EditText
        android:id="@+id/speed_limit_alert_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/percent"
        android:layout_alignBottom="@+id/percent"
        android:layout_alignLeft="@+id/maximum_number_objects_edit_text"
        android:ems="3"
        android:inputType="number"
        android:text="42"
        android:textColor="@color/black" >

        <requestFocus />
    </EditText>

    <View
        android:id="@+id/void_view"
        android:layout_width="match_parent"
        android:layout_height="20dp"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@+id/maximum_speed_unit"
        android:layout_below="@+id/maximum_number_objects" />

RelativeView
的宽度更改为
match\u parent
你要找的是父母的行为

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relLayout_advancedOptions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/border_advanced_options"
android:divider="?android:listSeparatorTextViewStyle"
android:showDividers="" > 

注意:
wrap\u内容
在android中指定视图以根据需要使用尽可能少的空间,这就是您得到的行为

我可以将对话框(不是AlertDialog!)调整到我的自定义布局,但我无法*设置标题或按钮,因此我在
requestFeature
之前设置内容时遇到了异常,然后我决定自定义对话框,并将按钮和标题包括在自定义布局中

*我已经研究过,如果我们在
OnCreate
中定义对话框,甚至在
OnCreateDialog
中定义其他对话框,这是有可能克服的,但是我有一个额外的类,只用于静态对话框方法,对我来说没有解决方案

除此之外,我发布了对我有用的东西,也许有人也有用

现在,我的自定义对话框如下所示

这里是要为谁测试它的代码

/**
 * @param c
 *            the Context
 * @return the about dialog
 */
public static void getAdvancedOptions(final Activity activity) {

    Log.i("TAG", "Dialogs::getAdvancedOptions:: 0");
    //settings            = session.getSettings();

    // Creation of a Dialog with Frame and title Characteristics
    final Dialog dialog = new Dialog(activity);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.setContentView(R.layout.advanced_options_expanded);


    // Here we control the validity of "edit_text" Fields
    speed_limit_alert   = (EditText)dialog.findViewById(R.id.speed_limit_alert_edit_text);                                          
    minimum_speed       = (EditText)dialog.findViewById(R.id.minimum_speed_edit_text);                
    maximum_speed       = (EditText)dialog.findViewById(R.id.maximum_speed_edit_text);               
    max_objects_in_view = (EditText)dialog.findViewById(R.id.maximum_number_objects_edit_text);

    //showAdvancedOptions("getAdvancedOptions 1::");

    // First we set the "SharedPreferences"-saved values on EditText Fields                
    performEditText(speed_limit_alert,Constants.MIN_PERCENTAGE, Constants.MAX_PERCENTAGE,"speed_limit_alert"); 
    performEditText(minimum_speed, "","", "minimum_speed"); 
    performEditText(maximum_speed, "","","maximum_speed"); 
    performEditText(max_objects_in_view, "","","max_objects_in_view");  

    //showAdvancedOptions("getAdvancedOptions 4::");

    ok_button     = (Button)dialog.findViewById(R.id.ok_button);                                        
    cancel_button = (Button)dialog.findViewById(R.id.cancel_button);  


    // Definition of "OK" Button for the Dialog     
    ok_button.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v) {
            Log.i("TAG", "Dialogs::getAdvancedOptions::onClick");
            if ( dialog != null && dialog.isShowing()) {
                dialog.dismiss();
            }

        }
    });     

    cancel_button.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v) {
            Log.i("TAG", "Dialogs::getAdvancedOptions::onClick");
            if ( dialog != null && dialog.isShowing()) {
                dialog.dismiss();
            }

        }
    }); 

    dialog.show();

}

private static void performEditText(EditText edit_text, final String min_value, final String max_value, final String id) {

    String edit_text_value = edit_text.getText().toString();
    Log.i("TAG", "Dialogs::performEditText:: id: "+ id +" edit_text_value: "+edit_text_value+ " (min_value,max_value)=("+min_value+","+max_value+")");

    TextWatcher textWatcher = new TextWatcher() {
        public void afterTextChanged(Editable s) {
            int i = 0;
            Log.i("TAG","Dialogs::performEditText::afterTextChanged:id: "+ id +" - 0 : s: "+s.toString());

            int length = s.length();

            if ( length == 0 )
                i = 0;
            else if ( length < 3 ) {
                    if ( s.charAt(0) == '0')
                        s.delete(1, length );

                    i = Integer.parseInt(s.toString());
                    Log.i("TAG","Dialogs::performEditText::afterTextChanged:id: "+ id +" - 1a : s: "+s+", i:"+i);
            } else {
                //String hundred = "100";

                String s_value = s.toString();
                Log.i("TAG","Dialogs::performEditText::afterTextChanged: id: "+ id +" - 1b : s: "+s+", i:"+i);

                if ( ( min_value != null ) && ( min_value.length() != 0 ) && ( max_value != null) && ( max_value.length() != 0 )) {


                    if ( !s_value.equalsIgnoreCase(max_value))
                        s.delete(2, length );

                }

                i = Integer.parseInt(s.toString());
                Log.i("TAG","Dialogs::performEditText::afterTextChanged: id: "+ id +" - 2b : i: "+i);                   
            }
            if (i >= 0 && i <= 100) {
                Log.i("TAG","Dialogs::performEditText::afterTextChanged: id: "+ id +" - 3 : (i >= 0 && i <= 100): i: "+i);
                //speed_limit_alert.setText(s); // This ensures 0-100 value for speed_limit_alert
            }               
            Log.i("TAG","Dialogs::performEditText::afterTextChanged: id: "+ id +" - 4 : i: "+i);

        }
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            Log.i("TAG","Dialogs::performEditText::beforeTextChanged: id: "+ id +" s: "+s); 
        }

        public void onTextChanged(CharSequence s, int start, int before, int count) {
            Log.i("TAG","Dialogs::performEditText::onTextChanged: id: "+ id +" s: "+s);
        }
    };


    edit_text.addTextChangedListener(textWatcher);  


}



private static void showAdvancedOptions(String entryPoint) {
    String s_l_a = speed_limit_alert.getText().toString();  
    Log.i("TAG", entryPoint + "Dialogs::setAdvancedOptions:: s_l_a: "+s_l_a);
    String mi_s = minimum_speed.getText().toString();   
    Log.i("TAG", entryPoint + "Dialogs::setAdvancedOptions:: mi_s: "+mi_s);
    String ma_s = maximum_speed.getText().toString();   
    Log.i("TAG", entryPoint + "Dialogs::setAdvancedOptions:: ma_s: "+ma_s);
    String m_o_i_v = max_objects_in_view.getText().toString();  
    Log.i("TAG", entryPoint + "Dialogs::setAdvancedOptions:: m_o_i_v: "+m_o_i_v);       

}
/**
*@param c
*上下文
*@返回关于对话框
*/
公共静态无效getAdvancedOptions(最终活动){
Log.i(“标记”,“对话框::getAdvancedOptions::0”);
//设置=session.getSettings();
//创建具有框架和标题特征的对话框
最终对话框=新对话框(活动);
对话框.requestWindowFeature(窗口.FEATURE\u无\u标题);
setContentView(R.layout.advanced\u options\u展开);
//这里我们控制“编辑文本”字段的有效性
速度限制警告=(编辑文本)对话框。findViewById(R.id.speed限制警告编辑文本);
最小速度=(编辑文本)对话框。findViewById(R.id.minimum\u speed\u edit\u text);
最大速度=(编辑文本)对话框。findViewById(R.id.maximum\u speed\u edit\u text);
视图中的最大对象数=(编辑文本)对话框。findViewById(R.id.maximum\u number\u objects\u edit\u text);
//showAdvancedOptions(“getAdvancedOptions 1::”);
//首先,我们设置“SharedReferences”——在EditText字段上保存的值
performEditText(速度限制警报、常数.最小百分比、常数.最大百分比、“速度限制警报”);
performEditText(最小速度,,,,,,“最小速度”);
performEditText(最大速度,“,”,“最大速度”);
performEditText(视图中的最大对象数,“,”,“视图中的最大对象数”);
//showAdvancedOptions(“getAdvancedOptions 4::”);
ok_按钮=(按钮)对话框。findViewById(R.id.ok_按钮);
取消按钮=(按钮)对话框。findViewById(R.id.cancel\u按钮);
//对话框“确定”按钮的定义
确定按钮。setOnClickListener(新的OnClickListener(){
@凌驾
公共void onClick(视图v){
i(“标记”,“对话框::getAdvancedOptions::onClick”);
if(dialog!=null&&dialog.isShowing()){
dialog.dismise();
}
}
});     
取消按钮。setOnClickListener(新的OnClickListener(){
@凌驾
公共void onClick(视图v){
i(“标记”,“对话框::getAdvancedOptions::onClick”);
if(dialog!=null&&dialog.isShowing()){
dialog.dismise();
}
}
}); 
dialog.show();
}
私有静态void performEditText(编辑文本编辑文本、最终字符串最小值、最终字符串最大值、最终字符串id){
String edit_text_value=edit_text.getText().toString();
Log.i(“标记”,“对话框::performEditText::id:“+id+”编辑文本值:“+edit文本值+”(最小值,最大值)=(“+最小值+”,“+最大值+”));
TextWatcher TextWatcher=新的TextWatcher(){
公共无效后文本已更改(可编辑){
int i=0;
Log.i(“TAG”,“Dialogs::performEditText::postertextchanged:id:”+id+“-0:s:”+s.toString());
int length=s.length();
如果(长度==0)
i=0;
否则,如果(长度<3){
如果(s.charAt(0)='0')
s、 删除(1,长度);
i=Integer.parseInt(s.toString());
Log.i(“TAG”,“Dialogs::performEditText::postertextchanged:id:“+id+”-1a:s:“+s+”,i:+i);
}否则{
//字符串100=“100”;
字符串s_值=s.toString();
Log.i(“TAG”,“Dialogs::performEditText::postertextchanged:id:“+id+”-1b:s:“+s+”,i:+i);
如果((最小值!=null)&&(最小值.长度()!=0)&&(最大值!=null)&&(最大值.长度()!=0)){
如果(!s_值.equalsIgnoreCase(最大值))
s、 删除(2,长度);
}
i=Integer.parseInt(s.toString());
Log.i(“TAG”,“Dialogs::performEditText::posterextchanged:id:”+id+“-2b:i:”+i);
}

如果(i>=0&&i否,我想,您会感到困惑,我希望,对话框窗口,即父窗口,采用其内容的维度,=child,即advanced_options.xml布局。请看一看pics。Regards我建议的方法将通过将内容扩展到对话框来消除间隙。我理解您想要的是减小对话框的大小
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@drawable/border_advanced_options"
    android:divider="?android:listSeparatorTextViewStyle"
    android:showDividers="middle" >  

<RelativeLayout
    android:id="@+id/relLayout_advancedOptions"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@color/white"
    android:divider="?android:listSeparatorTextViewStyle"
    android:orientation="vertical"
    android:showDividers="" >

    <TextView
        android:id="@+id/speed_limit"
        style="?android:attr/listSeparatorTextViewStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/void_view_0"
        android:layout_marginTop="10dp"
        android:text="@string/speed_limit"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@color/black"
        android:textSize="14dp" />

    <TextView
        android:id="@+id/speed_limit_alert"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/speed_limit"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="10dp"
        android:text="@string/speed_limit_alert"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/percent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/speed_limit_alert"
        android:layout_toRightOf="@+id/speed_limit_alert_edit_text"
        android:text="@string/percentage_symbol"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/minimum_speed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/speed_limit_alert"
        android:layout_below="@+id/speed_limit_alert_edit_text"
        android:layout_marginTop="15dp"
        android:text="@string/minimum_speed"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <EditText
        android:id="@+id/minimum_speed_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/minimum_speed"
        android:layout_alignBottom="@+id/minimum_speed"
        android:layout_alignLeft="@+id/speed_limit_alert_edit_text"
        android:ems="3"
        android:inputType="number"
        android:text="6"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/minimum_speed_unit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/minimum_speed"
        android:layout_alignLeft="@+id/percent"
        android:paddingRight="5dp"
        android:text="@string/metric_speed_unit"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/maximum_speed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/minimum_speed"
        android:layout_below="@+id/minimum_speed_edit_text"
        android:layout_marginTop="15dp"
        android:text="@string/maximum_speed"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <EditText
        android:id="@+id/maximum_speed_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/maximum_speed"
        android:layout_alignBottom="@+id/maximum_speed"
        android:layout_alignLeft="@+id/minimum_speed_edit_text"
        android:ems="3"
        android:inputType="number"
        android:text="18"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/maximum_speed_unit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/maximum_speed"
        android:layout_alignRight="@+id/minimum_speed_unit"
        android:layout_toRightOf="@+id/maximum_speed_edit_text"
        android:paddingRight="5dp"
        android:text="@string/metric_speed_unit"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <TextView
        android:id="@+id/mobile_device_performance"
        style="?android:attr/listSeparatorTextViewStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/maximum_speed_edit_text"
        android:layout_marginTop="20dp"
        android:gravity="center_vertical"
        android:text="@string/mobile_device_performance"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@color/black"
        android:textSize="14dp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/maximum_number_objects"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/maximum_speed"
        android:layout_below="@+id/mobile_device_performance"
        android:layout_marginBottom="10dp"
        android:layout_marginTop="10dp"
        android:text="@string/maximum_objects_in_view"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />

    <EditText
        android:id="@+id/maximum_number_objects_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/maximum_number_objects"
        android:layout_alignBottom="@+id/maximum_number_objects"
        android:layout_marginLeft="10dp"
        android:layout_toRightOf="@+id/maximum_number_objects"
        android:ems="3"
        android:inputType="number"
        android:text="450"
        android:textColor="@color/black" />

    <EditText
        android:id="@+id/speed_limit_alert_edit_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/percent"
        android:layout_alignBottom="@+id/percent"
        android:layout_alignLeft="@+id/maximum_number_objects_edit_text"
        android:digits="0123456789"
        android:ems="3"
        android:inputType="number"
        android:text="42"
        android:textColor="@color/black" >

        <requestFocus />
    </EditText>

    <View
        android:id="@+id/void_view"
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@+id/lin_layout_buttons"
        android:layout_below="@+id/maximum_number_objects"
        android:background="@color/black" />

    <TextView
        android:id="@+id/title_advanced_options"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_alignRight="@+id/minimum_speed_unit"
        android:drawableLeft="@drawable/ic_launcher_48"
        android:drawableRight="@drawable/ic_action_settings_48"
        android:gravity="center|center_vertical"
        android:paddingLeft="5dp"
        android:text="Advanced Options"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@color/blue" />

    <View
        android:id="@+id/void_view_0"
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@+id/title_advanced_options"
        android:layout_below="@+id/title_advanced_options"
        android:background="@color/black" />
    <LinearLayout
        android:id="@+id/lin_layout_buttons"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@+id/minimum_speed_unit"
        android:layout_alignTop="@+id/void_view"
        android:weightSum="3" >

        <Button
            android:id="@+id/ok_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/maximum_number_objects"
            android:layout_alignRight="@+id/speed_limit_alert"
            android:layout_below="@+id/maximum_number_objects_edit_text"
            android:layout_weight="1.5"
            android:text="OK" />

        <Button
            android:id="@+id/cancel_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/button1"
            android:layout_alignBottom="@+id/button1"
            android:layout_toRightOf="@+id/button1"
            android:layout_weight="1.5"
            android:text="Cancel" />
    </LinearLayout>     
</RelativeLayout>