Dialog下的Builder单击事件如何能够跳转到一个新的Activity ?求教育
附上我代码:
Builder builder = new AlertDialog.Builder(this.Context);//创建对话框
builder.setTitle(R.string.tip);//设置对话框标题
builder.setMessage(R.string.not_setting_current_region);//设置对话框信息
/* 设置对话框确认按钮 */
builder.setPositiveButton(R.string.confirm, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
dialog.dismiss();
Intent intent = new Intent(Activity_SSGJ.this, Activity_select_City.class);
startActivity(intent);
Log.i(YangJ, "你点击了确定!");
}
});
不明白的是为什么我的这个跳转是不成功的,点击确定就停止了 ? 求大神教育
[最优解释]
Builder builder = new AlertDialog.Builder(this.Context); //创建对话框
——》
Builder builder = new AlertDialog.Builder(this); //创建对话框
不知道你的this.Context是什么,结合6楼童鞋的测试,估摸着是这个的问题
[其他解释]
Builder builder = new AlertDialog.Builder(this); // 创建对话框
builder.setTitle("标题"); // 设置对话框标题
builder.setMessage("测试"); // 设置对话框信息
/* 设置对话框确认按钮 */
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
Intent intent = new Intent(MainActivity.this, TwoActivity.class);
MainActivity.this.startActivity(intent);
}
}).show();
我试了下,正常跳转啊。。。
[其他解释]
1 ,把这两句加上 AlertDialog dialog = builder.create();
dialog.show();
[其他解释]
这么写应该没事啊,你出了什么问题?
[其他解释]
Intent intent = new Intent(Activity_SSGJ.this, Activity_select_City.class);
Activity_SSGJ.this.startActivity(intent);
这样试试
[其他解释]
错误日志贴上~
[其他解释]
有一个空指针异常。
[其他解释]
这样子也不行不知道怎么搞,按钮都可以跳转,就是放到这个弹窗里面就不行
[其他解释]
还有就是你的 activity在清单文件注册了吗
[其他解释]
public class MainActivity extends Activity {
private Button btn;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn=(Button)findViewById(R.id.button1);
btn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
AlertDialog.Builder builder = new Builder(MainActivity.this);
builder.setMessage("确认退出吗?");
builder.setTitle("提示");
builder.setPositiveButton("确认", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
Intent intent = new Intent(MainActivity.this,MainActivity2.class);
startActivity(intent);
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.create().show();
}
});
}
我自己写了一个,没报错啊
你参考一下
[其他解释]
我草了,我自己新建了个项目也可以跳。麻辣隔壁
[其他解释]
注册了的,估计是我代码结构有问题
[其他解释]
搞定了。