Java 使用TextView';s onClick可转到下一页的片段
这也是,但现在遵循一个代码块:Java 使用TextView';s onClick可转到下一页的片段,java,android,android-fragments,onclicklistener,Java,Android,Android Fragments,Onclicklistener,这也是,但现在遵循一个代码块: public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { myView = inflater.inflate(R.layout.first_layout, container, false); tv.setOnClickListener(
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
myView = inflater.inflate(R.layout.first_layout, container, false);
tv.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
tv = (TextView) myView.findViewById(R.id.textView);
Intent i = new Intent();
i.setClass(getActivity(), Second_Fragment.class);
startActivity(i);
}
});
return myView;
}
XML代码:
错误代码:
java.lang.Throwable: Explicit termination method 'close' not called
at dalvik.system.CloseGuard.open(CloseGuard.java:184)
at android.os.ParcelFileDescriptor.<init>(ParcelFileDescriptor.java:180)
at android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:916)
at android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:906)
at android.app.IBackupAgent$Stub.onTransact(IBackupAgent.java:57)
at android.os.Binder.execTransact(Binder.java:446)
07-13 04:47:09.009 1082-1092/android.process.acore E/StrictMode﹕ A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
java.lang.Throwable: Explicit termination method 'close' not called
at dalvik.system.CloseGuard.open(CloseGuard.java:184)
at android.os.ParcelFileDescriptor.<init>(ParcelFileDescriptor.java:180)
at android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:916)
at android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:906)
at android.app.IBackupAgent$Stub.onTransact(IBackupAgent.java:64)
at android.os.Binder.execTransact(Binder.java:446)
07-13 04:47:09.236 1082-1092/android.process.acore E/StrictMode﹕ A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
java.lang.Throwable: Explicit termination method 'close' not called
at dalvik.system.CloseGuard.open(CloseGuard.java:184)
at android.os.ParcelFileDescriptor.<init>(ParcelFileDescriptor.java:180)
at android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:916)
at android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:906)
at android.app.IBackupAgent$Stub.onTransact(IBackupAgent.java:71)
at android.os.Binder.execTransact(Binder.java:446)
java.lang.Throwable:未调用显式终止方法“close”
位于dalvik.system.CloseGuard.open(CloseGuard.java:184)
在android.os.ParcelFileDescriptor上。(ParcelFileDescriptor.java:180)
位于android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:916)
位于android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:906)
位于android.app.IBackupAgent$Stub.onTransact(IBackupAgent.java:57)
位于android.os.Binder.execTransact(Binder.java:446)
07-13 04:47:09.009 1082-1092/android.process.acore E/StrictMode﹕ 已在附加的堆栈跟踪中获取资源,但从未释放。有关避免资源泄漏的信息,请参阅java.io.Closeable。
java.lang.Throwable:未调用显式终止方法“close”
位于dalvik.system.CloseGuard.open(CloseGuard.java:184)
在android.os.ParcelFileDescriptor上。(ParcelFileDescriptor.java:180)
位于android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:916)
位于android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:906)
位于android.app.IBackupAgent$Stub.onTransact(IBackupAgent.java:64)
位于android.os.Binder.execTransact(Binder.java:446)
07-13 04:47:09.236 1082-1092/android.process.acore E/StrictMode﹕ 已在附加的堆栈跟踪中获取资源,但从未释放。有关避免资源泄漏的信息,请参阅java.io.Closeable。
java.lang.Throwable:未调用显式终止方法“close”
位于dalvik.system.CloseGuard.open(CloseGuard.java:184)
在android.os.ParcelFileDescriptor上。(ParcelFileDescriptor.java:180)
位于android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:916)
位于android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:906)
位于android.app.IBackupAgent$Stub.onTransact(IBackupAgent.java:71)
位于android.os.Binder.execTransact(Binder.java:446)
如果您的第二个片段。类
是一个片段,则无法通过startActivity()
附加片段。请参见如何创建片段
从文档中,添加要分段的视图:
<FrameLayout
android:id="@+id/second_fragment"
android:layout_width="wrap_content"
android:layout_height="match_parent" />
假设您的
第二个片段.class
是片段,则无法通过startActivity()
附加片段。请参见如何创建片段
从文档中,添加要分段的视图:
<FrameLayout
android:id="@+id/second_fragment"
android:layout_width="wrap_content"
android:layout_height="match_parent" />
第一:您没有启动片段调用:
Intent i = new Intent();
i.setClass(getActivity(), Second_Fragment.class);
startActivity(i);
该方法的名称很明确:startActivity(i);因此,您应该学习如何启动片段,而不是启动活动
第二:提出:
tv = (TextView) myView.findViewById(R.id.textView);
在setOnClickListener(…)之前 首先:您没有启动片段调用:
Intent i = new Intent();
i.setClass(getActivity(), Second_Fragment.class);
startActivity(i);
该方法的名称很明确:startActivity(i);因此,您应该学习如何启动片段,而不是启动活动
第二:提出:
tv = (TextView) myView.findViewById(R.id.textView);
在setOnClickListener(…)之前 您可以在活动和片段中使用接口 无论何时单击片段中的textview,jst都会通过接口将数据发送到活动,并从活动更新片段
为此,您必须使用onAttach()方法您可以在活动和片段中使用接口 无论何时单击片段中的textview,jst都会通过接口将数据发送到活动,并从活动更新片段
为此,您必须使用onAttach()方法好的,我不明白。你能给我看看代码的样子吗。ThanksFragmentTransaction=getFragmentManager().beginTransaction();确保您的活动扩展了FragmentActivity。我不确定你的代码结构是什么样子,但这应该会让你走上正轨好吧,我不明白。你能给我看看代码的样子吗。ThanksFragmentTransaction=getFragmentManager().beginTransaction();确保您的活动扩展了FragmentActivity。我不确定你的代码结构是什么样的,但这应该会让你走上正确的轨道。展示你的整个班级。展示你的整个班级。投票表决我的答案(和其他答案),如果它对你有用的话。祝你好运和快乐!如果我的答案对你有用,请投票表决。祝你好运和快乐!