从外部访问片段视图OnCreateView方法 [英] Access Fragments View from Outside OnCreateView Method

查看:152
本文介绍了从外部访问片段视图OnCreateView方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

已经对此进行了搜索,但是每个人都使用了onCreateView()方法,您可以在其中通过充气机访问Fragments视图.

Have searched around for this but everyone of them is for the onCreateView() method where you can access the Fragments view via the inflater.

public View onCreateView(LayoutInflater inflater, ViewGroup group, Bundle saved)
{
    super.onCreateView(inflater, group, saved);
    View view = inflater.inflate(R.layout.photosfrag, group, false);

我想知道的是如何动态地执行此操作.例如,说我正在使用一个活动来显示一个片段并在该片段中调用一个方法,例如:

What I want to know is how to do this dynamically. For example say I am using an activity to show a fragment and call a method in the fragment such as:

public void setTitleText(String title) {
    TextView nameView = (TextView)getView().findViewById(R.id.titleTxtView);
    nameView.setText(title);
}

仅仅因为片段已经创建,并且它将是动态更改它的一种方式.

Just because the fragment is already created and it would be a way of dynamically changing it.

任何帮助都是宏大的.我可能做错了.

Any help would be grand. I may doing it all wrong.

编辑

这是崩溃日志

06-25 17:31:37.343: D/AndroidRuntime(1009): Shutting down VM
06-25 17:31:37.353: W/dalvikvm(1009): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
06-25 17:31:37.383: E/AndroidRuntime(1009): FATAL EXCEPTION: main
06-25 17:31:37.383: E/AndroidRuntime(1009): java.lang.NullPointerException
06-25 17:31:37.383: E/AndroidRuntime(1009):     at com.corecoders.stuart.MainActivity.onTrackSelected(MainActivity.java:81)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at com.corecoders.stuart.HistoryFragment.onListItemClick(HistoryFragment.java:51)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.app.ListFragment$2.onItemClick(ListFragment.java:160)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.widget.AdapterView.performItemClick(AdapterView.java:292)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.widget.AbsListView.performItemClick(AbsListView.java:1058)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.widget.AbsListView$PerformClick.run(AbsListView.java:2514)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.widget.AbsListView$1.run(AbsListView.java:3168)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.os.Handler.handleCallback(Handler.java:605)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.os.Handler.dispatchMessage(Handler.java:92)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.os.Looper.loop(Looper.java:137)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at android.app.ActivityThread.main(ActivityThread.java:4424)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at java.lang.reflect.Method.invokeNative(Native Method)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at java.lang.reflect.Method.invoke(Method.java:511)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
06-25 17:31:37.383: E/AndroidRuntime(1009):     at dalvik.system.NativeStart.main(Native Method)

推荐答案

您的操作方式应该可以正常工作.崩溃日志显示 NPE 与片段更新其小部件的方式无关.

The way you are doing it should just work. The crash log shows us that the NPE is unrelated to the way the fragment updates its widgets.

这篇关于从外部访问片段视图OnCreateView方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆