【问题标题】:error: cannot find symbol method setContentView(int) [duplicate]错误:找不到符号方法 setContentView(int) [重复]
【发布时间】:2018-01-23 19:58:13
【问题描述】:

我是 Android Studio 的新手。我遇到了setContentView 的问题。 我知道它在 Fragment 中不起作用。

有人知道如何解决这个问题吗?

错误:

错误:找不到符号方法 setContentView(int)

代码:

public class Tab1Fragment extends Fragment{
    private static final String TAG = "Tab1Fragment";


    Toolbar mToolbar;
    ListView mListView;

    String[] countryNames = {"Australia", "Brazil", "China", "France", "Germany", "India", "Ireland", "Italy"
            , "Mexico", "Poland", "Russia", "Spain", "US"};
    int[] countryFlags = {R.drawable.flag_australia,
            R.drawable.flag_brazil,
            R.drawable.flag_china,
            R.drawable.flag_france,
            R.drawable.flag_germany,
            R.drawable.flag_india,
            R.drawable.flag_ireland,
            R.drawable.flag_italy,
            R.drawable.flag_maxico,
            R.drawable.flag_poland,
            R.drawable.flag_russia,
            R.drawable.flag_spain,
            R.drawable.flag_us};


    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fragment1_layout);

        mToolbar = (Toolbar) findViewById(R.id.toolbar);
        mToolbar.setTitle("My Application");
        mListView = (ListView) findViewById(R.id.listview);
        MyAdapter myAdapter = new MyAdapter(Tab1Fragment.this, countryNames, countryFlags);
        mListView.setAdapter(myAdapter);
        mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                Intent mIntent = new Intent(Tab1Fragment.this, DetailActivity.class);
                mIntent.putExtra("countryName", countryNames[i]);
                mIntent.putExtra("countryFlag", countryFlags[i]);
                startActivity(mIntent);
            }
        });
    }

    private Button btnTEST;
}

【问题讨论】:

标签: android android-activity fragment oncreate


【解决方案1】:

在片段中你膨胀的布局不是setContentView 代码可能是这样的

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

      // Put your fragment code here

        return rootView;
    }

【讨论】:

  • 感谢您的帮助@Ahmed Abd-Elmeged。现在很容易理解。但 MyAdapter 和 Intent 不起作用。 MyAdapter myAdapter = new MyAdapter(MainActivity.this, countryNames, countryFlags);Intent mIntent = new Intent(MainActivity.this, DetailActivity.class);你知道它在 Fragment 中的样子吗?
  • 告诉你你到底想做什么
  • 我想在这个片段中显示名称和标志的列表。这是教程:youtube.com/watch?v=q2XA0Pe2W04&t=334s 可以在主要活动中显示的位置。但我想在另一个选项卡中显示它 - 'Tab1Fragment'。
  • 当然在这两种情况下我都将 MainActivity.this 更改为 Tab1Fragment.this
  • 我认为你应该用你当前的代码和你试图实现的目标提出一个新问题,我会在一小时后回答它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-27
相关资源
最近更新 更多