SherlockFragment(容器)如何访问Fragment中的组件?

时间:2014-09-12 08:39:25

标签: java android layout android-fragments actionbarsherlock

我有一个SherlockFragmentActivity充当容纳两个片段的容器。

这是 SherlockFragmentActivity

的主要代码
@Override
    protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_chat2);

        ActionBar objAction = getSupportActionBar();

        // Hide Actionbar Icon
        objAction.setDisplayShowHomeEnabled(false);

        // Hide Actionbar Title
        objAction.setDisplayShowTitleEnabled(false);

        // added for sherlock action bar plugin
        objAction.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

        ChatTab = objAction.newTab();
        ChatTab.setText("Chatting");
        ChatTab.setTabListener(new TabListener());

        TransferTab = objAction.newTab();
        TransferTab.setText("Transferred Items");
        TransferTab.setTabListener(new TabListener());

        // Add tabs to actionbar
        objAction.addTab(ChatTab);
        objAction.addTab(TransferTab);
}

但我的问题是如何通过主Activity访问片段内的每个组件?比方说,我想访问片段的按钮。无论如何我把它放在下面的代码里? (对不起要问)

btn_sendMessage = (Button) findViewById(R.id.btn_chatSend);

1 个答案:

答案 0 :(得分:0)

使用

btn_sendMessage = (Button) [object of your fragment].getView().findViewById(R.id.btn_chatSend);

P.S。:在使用之前请注意片段生命周期,否则你可能会得到nullPointerException。