使用静态片段中的按钮打开一个新活动?

时间:2013-11-26 20:15:11

标签: android button android-fragments

我有一个包含四个片段的Activity(main)。我想在第三个片段中添加一个按钮,打开另一个包含三个片段的Activity(辅助)。当我按回时我想返回主活动。

我已经找到了答案,但找不到有效的答案。我的片段代码在主要活动中,片段是静态的,否则当旋转到横向模式时,应用程序强制关闭。

我从这里拿了按钮代码: http://developer.android.com/reference/android/widget/Button.html

public class fragmentFour extends Fragment  {
    Intent intent = new Intent(getActivity(), musikteori_ackord.class);
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_layout1, container, false);
        }
    final Button button = (Button) findViewById(R.id.buttonAckord);
    button.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            startActivity(intent);
        }
    });
 }

错误:

 - Cannot resolve symbol 'setOnClickListener'
 - Cannot resolve symbol 'v'

1 个答案:

答案 0 :(得分:2)

因此,只需在该按钮的第三个片段和Button中添加onClick,启动Intent即可打开包含其他三个片段的新所需Activity

[编辑]

试试这个:

public class fragmentFour extends Fragment  {

      Intent intent;
      @Override
      public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    View root = inflater.inflate(R.layout.fragment_layout1, container, false);
        intent = new Intent(getActivity(), musikteori_ackord.class);
        final Button button = (Button) root.findViewById(R.id.buttonAckord);

        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                startActivity(intent);
            }
        });

        return root;
    }
 }