Intent和putExtra不起作用

时间:2014-03-13 22:42:31

标签: android android-intent

我对Android编程感到疯狂。没有什么能正常运作..

这有什么不对吗?

错误:getIntent() is undefined for type View

有什么想法吗?

public static class PlaceholderFragment extends Fragment {

    public PlaceholderFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_quiz, container,
                false);

        TextView text = (TextView)rootView.findViewById(R.id.ttv);

        Bundle intentBundle = rootView.getIntent().getExtras();
        int question_cat = intentBundle.getInt("question_cat");

        text.setText(question_cat);

        return rootView;
    }
}

1 个答案:

答案 0 :(得分:1)

你可以这样做:

Intent intentBundle = getActivity().getIntent();
        String question_cat = intentBundle.getStringExtra("question_cat");
        Log.i("Result : ", question_cat);

即使您将值作为字符串获取,也可以在以后使用它作为int值:

int j = Integer.valueOf(question_cat);

    Log.i("Result : ", String.valueOf(j));

对于您的其他问题,使用getIntent(),问题是您在片段类中使用它,并且为了使用它,您必须使用getActivity()来访问它。如果这只是一项正常的活动,那就不那么复杂了。如果一些概念很清楚,Android真的很有趣.. :)