我有一个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);
答案 0 :(得分:0)
使用
btn_sendMessage = (Button) [object of your fragment].getView().findViewById(R.id.btn_chatSend);
P.S。:在使用之前请注意片段生命周期,否则你可能会得到nullPointerException。