-4
嗨谁能告诉我如何使对话框片段如下图,以及如何将结果传回活动? 设置活动 - 新对话
嗨谁能告诉我如何使对话框片段如下图,以及如何将结果传回活动? 设置活动 - 新对话
AlertDialog.Builder editalert = new AlertDialog.Builder(this);
editalert.setTitle("messagetitle");
editalert.setMessage("here is the message");
final EditText input = new EditText(this);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.FILL_PARENT);
input.setLayoutParams(lp);
editalert.setView(input);
editalert.setPositiveButton("Send via email", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
}
});
editalert.show();
创建一个具有editext和两个按键的自定义dilaog。
dilog.xml
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" >
<requestFocus />
</EditText>
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText1"
android:layout_marginLeft="30dp"
android:layout_marginTop="20dp"
android:text="OK" />
<Button
android:id="@+id/anuluj"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/ok"
android:layout_alignBottom="@+id/ok"
android:layout_marginLeft="35dp"
android:layout_toRightOf="@+id/ok"
android:text="Anuluj" />
</RelativeLayout>
在你的活动设置cusotm布局到您的对话框
public void showpopup()
{
final Dialog d = new Dialog(MainActivity.this);
d.setTitle("my title");
d.setContentView(R.layout.dialog);
Button ok = (Button) d.findViewById(R.id.ok);
final EditText ed= (EditText) d.findViewById(R.id.editText1);
ok.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String s= ed.getText().toString();//get text form editext
}
});
Button anuluj = (Button) d.findViewById(R.id.anuluj);
anuluj.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
d.cancel();
}
});
d.show();
}
首先自己尝试一下。有足够的Tutoriols描述该用例。 – 2013-04-05 09:42:12
嘿,在线教程很容易.. – 2013-04-05 09:58:30