在我的项目中,有一些按钮。每当我单击一个按钮时,它都会显示一个带有该按钮描述的警报对话框。我已经在 string.xml 中写了描述。每当我单击按钮时,它都会从 string.xml 中获取描述并显示给我们。但我的问题是我的消息(将显示在对话框中)太长了。所以,我想要可滚动的警报对话框。不创建另一个 xml文件,怎么可能在java代码中。
问问题
9828 次
2 回答
1
您可以使用 setView 方法自定义对话框并将自定义视图应用于对话框。
AlertDialog.Builder ad = new AlertDialog.Builder(this);
ad.setIcon(R.drawable.icon);
ad.setTitle("Instructions ...");
**ad.setView(LayoutInflater.from(this).inflate(R.layout.instructions_dialog,null));**
ad.setPositiveButton("OK",
new android.content.DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int arg1) {
// OK, go back to Main menu
}
}
);
ad.setOnCancelListener(new DialogInterface.OnCancelListener(){
public void onCancel(DialogInterface dialog) {
// OK, go back to Main menu
}}
);
我希望这是有帮助的。
于 2012-05-17T05:01:47.763 回答
0
这是一个例子。您可以根据您的要求进行更改
你可以在按钮事件中添加它
Dialog dialog = new Dialog(this);
dialog.setContentView(R.layout.alert);
Spinner spin = (Spinner)dialog.findViewById(R.id.spinner1);
Spinner spin2 = (Spinner)dialog.findViewById(R.id.spinner2);
EditText t1 =(EditText)dialog.findViewById(R.id.editText1);
EditText t2 =(EditText)dialog.findViewById(R.id.editText2);
EditText t3 =(EditText)dialog.findViewById(R.id.editText3);
EditText t4 =(EditText)dialog.findViewById(R.id.editText4);
dialog.show();
警报.xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
android:id="@+id/widget54"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/editText1"
android:layout_width="211dp"
android:layout_height="wrap_content"
android:layout_x="10dp"
android:layout_y="11dp"
>
</EditText>
<EditText
android:id="@+id/editText2"
android:layout_width="208dp"
android:layout_height="wrap_content"
android:layout_x="19dp"
android:layout_y="76dp"
/>
<EditText
android:id="@+id/editText3"
android:layout_width="208dp"
android:layout_height="wrap_content"
android:layout_x="20dp"
android:layout_y="138dp"
/>
<EditText
android:id="@+id/editText4"
android:layout_width="212dp"
android:layout_height="wrap_content"
android:layout_x="18dp"
android:layout_y="196dp"
/>
<Spinner
android:id="@+id/spinner1"
android:layout_width="222dp"
android:layout_height="wrap_content"
android:layout_x="5dp"
android:layout_y="254dp" />
<Spinner
android:id="@+id/spinner2"
android:layout_width="225dp"
android:layout_height="wrap_content"
android:layout_x="2dp"
android:layout_y="310dp" />
</LinearLayout>
</ScrollView>
于 2012-05-17T05:19:17.050 回答