当我点击Signin按钮时,App崩溃了。当我调试代码时,它会转移到" Looper.java"的最后一个块。文件。我没有任何具有此名称的文件。
MainActivity.java
private void signIn() {
Intent intent = new Intent(MainActivity.this, Main_Tab.class);
startActivity(intent);
setContentView(R.layout.activity_main_home);
}
Looper.java
try {
msg.target.dispatchMessage(msg);
} finally {
if (traceTag != 0) {
Trace.traceEnd(traceTag);
}
}
答案 0 :(得分:0)
试试这个
private void signIn() {
Intent intent = new Intent(MainActivity.this, Main_Tab.class);
startActivity(intent);
}
答案 1 :(得分:0)
以下行应在开始活动之前。
setContentView(R.layout.activity_main_home);
因为当您运行新活动时,将显示新内容而不是旧内容。 它应该是这样的。
private void signIn() {
setContentView(R.layout.activity_main_home);
Intent intent = new Intent(MainActivity.this, Main_Tab.class);
startActivity(intent);
}
答案 2 :(得分:0)
render(
<Provider store={store}>
<Router onUpdate={scrollToTop} history={history} >
<Route path="/" component={App}>
<IndexRedirect to="app/dashboard" /> // IndexRedirect
<Route path="404" component={PageErr404} />
<Route path="app" component={MainApp}>
<Route path="dashboard" component={Dashboard} />
</Route>
<Redirect from="*" to="404" /> // Redirect
</Route>
</Router>
</Provider>,
document.getElementById('app-container')
)
试试这个,开始活动后不要调用setContentView方法。
答案 3 :(得分:0)
在onCreate()
方法中,始终将这两行放在最上面 -
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
因此,onClickListener()
中所需的一切,在这种情况下signIn()
就是这些。
Intent intent = new Intent(MainActivity.this, Main_Tab.class);
startActivity(intent)
如果应用仍在崩溃,请调试onCreate()
的{{1}}方法并发布日志报告。
答案 4 :(得分:0)
将您的登录构造函数更改为此
private void signIn() {
Intent intent = new Intent(context, Main_Tab.class);
startActivity(intent);
finish();
}
并在你的onCreate构造函数中添加它,如果不存在的话。
final Context context = this;
如果您仍有问题,请告诉我。
答案 5 :(得分:0)
您确定Main_Tab.class扩展了某种Activity类,例如“AppCompatActivity”。引起我注意的一件事是你在Main_Tab中使用下划线,但我想我个人喜欢使用camelcase来命名类。
也尝试删除:
setContentView(R.layout.activity_main_home);
答案 6 :(得分:0)
您不会将活动(Main_Tab)添加到AndroidManifest.xml文件中 我遇到了同样的问题,解决了这个问题。