1

我在这里找到了一个不错的带有片段的布局

我将按钮添加到 xml 片段,但我不知道如何实现按钮,我的意思是,我不知道如何为按钮工作。

问题是我需要在片段内创建一个回调接口并要求宿主活动实现它,然后活动通过接口接收回调:

Android 中的片段

不幸的是,目前尚不清楚如何使用按钮来做到这一点。

简而言之,我有我的按钮,但我不知道如何让它工作。

4

2 回答 2

0

我也有同样的问题。好吧,我可以单击按钮并做一个简单的 Toast,但片段仅此而已。这个模型真的让我在这里死了。

要添加按钮,请在您的 fragment.xml 文件上创建它们,然后在您的片段类中的 onCreate 方法中调用它们。我使用这样的简单代码:

Button btn = (Button)getActivity().findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {                       
    @Override
    public void onClick(View v) {
        Log.i("FragmentsTab1", "++ ON BUTTONCLICK 1 ++ ");
        showFrag();
    }
});

我通常也将它包装在 try/catch 中。该按钮有效,并将调用我的本地私有方法 (showFrag()),它可以是 Toast 或对话框,但做更多的事情对我不起作用。我无法访问 Fragment.xml 上的 TextView 或调用 Activity。真的很奇怪。

于 2013-05-14T17:53:00.043 回答
0

我认为这可能是相关的:http: //developer.android.com/training/basics/fragments/communicating.html#DefineInterface for trivial case

我发现这篇文章对复杂的设计很有用:在配置更改后恢复片段的对象引用

于 2013-09-03T10:06:04.413 回答