WEB开发网
开发学院手机开发Android 开发 Android SDK 开发之创建对话框 阅读

Android SDK 开发之创建对话框

 2010-03-23 04:24:00 来源:WEB开发网   
核心提示:如果你想自定义一个对话框,你可以使用布局元素来创造你的对话框的布局,Android SDK 开发之创建对话框(8),定义好布局后,将根View对象或者布局资源ID传给setContentView(View).例如,而是只能使用setView(View),该方法接受一个View对象,创建如图所示的对话框:创建一个xml布

如果你想自定义一个对话框,你可以使用布局元素来创造你的对话框的布局。定义好布局后,将根View对象或者布局资源ID传给setContentView(View).

例如,创建如图所示的对话框:

创建一个xml布局custom_dialog.xml:

《LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/layout_root"

android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:padding="10dp"

《ImageView android:id="@+id/image"

android:layout_width="wrap_content"

android:layout_height="fill_parent"

android:layout_marginRight="10dp"

/》

《TextView android:id="@+id/text"

android:layout_width="wrap_content"

android:layout_height="fill_parent"

android:textColor="#FFF"

/》

《/LinearLayout》

该xml定义了一个LinearLayout中的一个ImageView 和一个TextView。

将以上布局设为对话框的content view,并且定义ImageView 和 TextView的内容:

Context mContext = getApplicationContext();

Dialog dialog = new Dialog(mContext);

dialog.setContentView(R.layout.custom_dialog);

dialog.setTitle("Custom Dialog");

TextView text = (TextView) dialog.findViewById(R.id.text);

text.setText("Hello, this is a custom dialog!");

ImageView image = (ImageView) dialog.findViewById(R.id.image);

image.setImageResource(R.drawable.android);

在初始化Dialog之后,使用setContentView(int),将布局资源id传给它。现在Dialog有一个定义好的布局,你可以使用findViewById(int)来找到该元素的id并修改它的内容。

使用前面所讲的方法显示对话框。

一个使用Dialog类建立的对话框必须有一个标题。如果你不调用setTitle(),那么标题区域会保留空白。如果你不希望有一个标题,那么你应该使用 AlertDialog类来创建自定义对话框。然而,由于一个AlertDialog使用AlertDialog.Builder类来建立最方便,所以你没有方法使用setContentView(int),而是只能使用setView(View)。该方法接受一个View对象,所以你需要从xml中展开你的根View。

上一页  3 4 5 6 7 8 9  下一页

Tags:Android SDK 开发

编辑录入:coldstar [复制链接] [打 印]
赞助商链接