从片段开始 activity
Start activity from fragment
我正在尝试启动一个 activity,它在 MaterielDialog 中,而这个在 Fragment 中。
这是我的片段部分:
Intent i = new Intent(getActivity(), SubjectViewActivity_.class);
i.putExtra("subject", projects.getFileurl());
startActivity(i);
并且在 SubjectViewActivity 中:
@UiThread
void setSubject(String LinkTo) {
Toast.makeText(getApplicationContext(), LinkTo, Toast.LENGTH_LONG).show();
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl(LinkTo);
setContentView(webview);
}
@AfterViews
void init() {
Intent intent = getIntent();
String url = intent.getExtras().getString("subject");
setSubject(url);
}
我收到这个错误:
Caused by: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
我正在使用 android 注释。我在堆栈上尝试了很多问题,但没有一个有效。
提前致谢
使用回调。在片段中实现一个接口,例如:
public interface OnChangeActivityListener{
void changeActivity()
}
然后在您的 activity 中实现接口。在 changeActivity()
方法中实现您创建的新意图。意图和 Activity 管理应该发生在 Activity 级别,而不是片段级别。
更多信息:
http://developer.android.com/training/basics/fragments/communicating.html
您是否在 void setSubject(String LinkTo)
调用中的 setContentView 之前设置了内容视图?如果你这样做了就不需要再设置了。
您的 Activity 布局中似乎已经有了 webview。
我正在尝试启动一个 activity,它在 MaterielDialog 中,而这个在 Fragment 中。
这是我的片段部分:
Intent i = new Intent(getActivity(), SubjectViewActivity_.class);
i.putExtra("subject", projects.getFileurl());
startActivity(i);
并且在 SubjectViewActivity 中:
@UiThread
void setSubject(String LinkTo) {
Toast.makeText(getApplicationContext(), LinkTo, Toast.LENGTH_LONG).show();
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl(LinkTo);
setContentView(webview);
}
@AfterViews
void init() {
Intent intent = getIntent();
String url = intent.getExtras().getString("subject");
setSubject(url);
}
我收到这个错误:
Caused by: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
我正在使用 android 注释。我在堆栈上尝试了很多问题,但没有一个有效。
提前致谢
使用回调。在片段中实现一个接口,例如:
public interface OnChangeActivityListener{
void changeActivity()
}
然后在您的 activity 中实现接口。在 changeActivity()
方法中实现您创建的新意图。意图和 Activity 管理应该发生在 Activity 级别,而不是片段级别。
更多信息: http://developer.android.com/training/basics/fragments/communicating.html
您是否在 void setSubject(String LinkTo)
调用中的 setContentView 之前设置了内容视图?如果你这样做了就不需要再设置了。
您的 Activity 布局中似乎已经有了 webview。