gpt4 book ai didi

Android - 获取异常

转载 作者:行者123 更新时间:2023-11-29 16:25:55 27 4
gpt4 key购买 nike

我正在开发一个出现异常的应用程序,我知道这是我正在犯的愚蠢或小错误,但您的帮助可能会让我振作起来:

public class Demo extends Activity
{
Button btnDemo;
Thread t;
AlertDialog alertDialog;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.demo);

btnDemo = (Button) findViewById(R.id.btnDemo);
btnDemo.setOnClickListener(new OnClickListener() {
public void onClick(final View v) {

t=new Thread() {
public void run() {
tryDemo();
}
};
t.start();
}
});
}

public void tryDemo()
{

try
{
int i = 5;

if(i == 0 || i == 1)
{
Intent intent_success = new Intent(getApplicationContext(), Main_Activity.class);
startActivity(intent_success);
}
else
{
alertDialog = new AlertDialog.Builder(getApplicationContext()).create();
alertDialog.setTitle("Demo");
alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//here you can add functions
} });
alertDialog.setIcon(R.drawable.icon);
alertDialog.setMessage("Sorry!! Either Username or Password Invalid");
alertDialog.show();

}
}
catch(Exception e)
{
Log.i("Demo", "Demo - Demo Exception");
}
}
}

在上面的代码中,如果我在 tryDemo 函数中使 i=0 或 i=1 那么它运行成功,但是如果我使它不是 0 或 1 那么它抛出异常作为“Demo - Demo Exception ".

我不确定,但我认为异常是从 getApplicationContext() 引发的。

更新:- 1

我得到的异常如下:

alt text

更新:- 2如果我删除“线程”部分并将整个功能代码写入按钮单击事件并将“getApplicationContext()”替换为 v.getContext() 然后它运行成功.........但我想要在 THREAD 中实现它。

请帮帮我,把我救出来...

谢谢

最佳答案

只需阅读您的日志 :D 您还没有调用 Looper.prepare()

如果我是正确的,你应该用 Looper.prepare() 和 Looper.loop() 包装你的 AlertDialog 代码

看起来像:

Looper.prepare()
// AlertDialog code
Looper.loop()

关于Android - 获取异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3674510/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com