自定义Dialog
1. 自定义布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/username"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/dialog_username" />
<EditText
android:id="@+id/username_edit"
android:layout_height="wrap_content"
android:layout_width="fill_parent" />
<TextView
android:id="@+id/password"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/dialog_password" />
<EditText
android:id="@+id/password_edit"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:password="true" />
</LinearLayout>
2. 在 activity 中通过 LayoutInflater 的对象,填充上面那个 xml 的布局文件生成 View
LayoutInflater dialoglayout = LayoutInflater.from(this);
final View textEntryView = dialoglayout.inflate(R.layout.dialog, null);
3. 在 onCreateDialog 中通过 setview 设置视图
public class dialog extends Activity{
/** Called when the activity is first created. */
@Override
protected Dialog onCreateDialog(int id) {
LayoutInflater dialoglayout = LayoutInflater.from(this);
final View textEntryView = dialoglayout.inflate(R.layout.dialog, null);
return new AlertDialog.Builder(dialog.this)
.setIcon(R.drawable.dialog_icon)
.setTitle(R.string.dialog_text)
.setView(textEntryView)
.setPositiveButton(R.string.dialog_ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
}
})
.setNegativeButton(R.string.dialog_cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
}
})
.create();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button textEntry = (Button) findViewById(R.id.dialog_button);
textEntry.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
showDialog(0);//onCreateDialog(int id)显示由这个方法创建的视图
}
});
}}
posted on 2011-06-28 15:22 android开发实例 阅读(179) 评论(0) 编辑 收藏 举报