gpt4 book ai didi

java - Android - 使用线程

转载 作者:行者123 更新时间:2023-12-01 17:31:00 24 4
gpt4 key购买 nike

我的应用程序中有三个类(class)。首先扩展 Activity

public class TestProjActivity extends Activity {
/** Called when the activity is first created. */
String my ="";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);


new Thread(new Runnable() {
public void run() {
Translation th = new Translation(this);
my = th.doSomeJob();
}
}).start();
Log.d("ONCREATE", my);
}

}

第二个是DBHelper

public class DBHelper {
private final Context myContext;

public DBHelper(Context context) {
this.myContext = context;
}

}

第三个扩展了 DBhelper

public class Translation extends DBHelper {


public Translation(Runnable runnable) {
super((Context) runnable);
}

public String doSomeJob(){
return "Yes I DID!";
}

}

future 我会改变这个类(class)来做真正的工作,但现在, 当我运行这个时,我收到此错误:

  • 05-11 13:15:53.003: E/AndroidRuntime(512): 未捕获的处理程序:线程 Thread-8 由于未捕获的异常而退出
  • 05-11 13:15:53.028: E/AndroidRuntime(512): java.lang.ClassCastException: iKA.PROJ.TestProjActivity$1
  • 05-11 13:15:53.028:E/AndroidRuntime(512):位于 another.pack.Translation.(Translation.java:10)
  • 05-11 13:15:53.028:E/AndroidRuntime(512):位于 iKA.PROJ.TestProjActivity$1.run(TestProjActivity.java:20)
  • 05-11 13:15:53.028: E/AndroidRuntime(512): 在 java.lang.Thread.run(Thread.java:1096)
  • 05-11 13:15:53.053:I/dalvikvm(512):threadid=7:对信号 3 使用react
  • 05-11 13:15:53.053:E/dalvikvm(512):无法打开堆栈跟踪文件“/data/anr/traces.txt”:权限被拒绝
  • 05-11 13:20:53.135:I/Process(512):发送信号。 PID:512 SIG:9

我做错了什么?

最佳答案

您正在尝试将 Runnable 转换为 Context。这是不可能的

我认为你想做的是

Translation th = new Translation(TestProjActivity.this);

public Translation(Context context) {
super(context);
}

关于java - Android - 使用线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10927364/

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