我正在设计一个弹出AlertDialog,它将警报对话框的视图设置为以下XML文件。由于某种原因,文件不会添加边距,我无法弄清楚我做错了什么。边距和填充不适用于activity_priority_level_values LinearLayout,包含所有TextView的LinearLayout或任何TextView。如何为所有文本视图之间的对话框边框和边距添加边距(或填充)?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/activity_priority_level_values"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/large_space">
<TextView android:id="@+id/level_1_header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/level_1_header"/>
<TextView android:id="@+id/level_1_decription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/level_1_description"/>
<TextView android:id="@+id/level_2_header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/level_2_header"/>
<TextView android:id="@+id/level_2_decription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/mid_space"
android:text="@string/level_2_description"/>
<TextView android:id="@+id/level_3_header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/level_3_header"/>
<TextView android:id="@+id/level_3_decription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/mid_space"
android:text="@string/level_3_description"/>
<TextView android:id="@+id/level_4_header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/level_4_header"/>
<TextView android:id="@+id/level_4_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/mid_space"
android:text="@string/level_4_description"/>
<TextView android:id="@+id/level_5_header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/level_5_header"/>
<TextView android:id="@+id/level_5_decription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/level_5_description"/>
</LinearLayout>
</LinearLayout>
活动
LinearLayout hiddenLayout = (LinearLayout)findViewById(R.id.activity_priority_level_values);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
if(hiddenLayout == null){
LinearLayout myLayout = (LinearLayout)findViewById(R.id.activity_law_priority);
View hiddenInfo = getLayoutInflater().inflate(R.layout.activity_priority_level_values, null);
builder.setView(hiddenInfo);
}
builder.create();
builder.show();
答案 0 :(得分:5)
问题是你的观点膨胀。
LinearLayout myLayout = (LinearLayout)findViewById(R.id.activity_law_priority);
View hiddenInfo = getLayoutInflater().inflate(R.layout.activity_priority_level_values, null);
你永远不应该用null充气。而是将代码更改为:
LinearLayout myLayout = (LinearLayout)findViewById(R.id.activity_law_priority);
View hiddenInfo = getLayoutInflater().inflate(R.layout.activity_priority_level_values, myLayout, false);
如果您使用null进行充气,则将忽略布局参数。