gpt4 book ai didi

java - Android:布局无法解析或不是字段

转载 作者:行者123 更新时间:2023-12-02 06:02:18 25 4
gpt4 key购买 nike

我有这个主要 Activity :

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.widget.ArrayAdapter;
import android.widget.ListView;

//Array of options --> ArrayAdapter --> ListView

//List view: {views: list_items.xml}


public class MainActivity extends FragmentActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

populateListView();
}
private void populateListView() {
//Create list of items
String[] myItems = {"Blue", "Green", "Purple", "Red"};

//Build Adapter
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
this //Context for the activity
R.layout.list_items, //Layout to use (Create)
myItems); //Items to be displayed

//Configure the ListView
ListView list = (ListView) findViewById(R.id.listViewMain);
list.setAdapter(adapter);

ViewPager myViewPager = (ViewPager) findViewById(R.id.viewPager);
myViewPager.setAdapter(new MyPagerAdapter(getSupportFragmentManager()));
myViewPager.setCurrentItem(1, false);
}

private class MyPagerAdapter extends FragmentPagerAdapter {

public MyPagerAdapter(FragmentManager fm) {
super(fm);
}

@Override
public Fragment getItem(int pos) {
switch(pos) {

case 2: return FirstFragment.newInstance("FirstFragment, Instance 1");
case 1: return SecondFragment.newInstance("SecondFragment, Instance 1");
case 0: return ThirdFragment.newInstance("ThirdFragment, Instance 1");
default: return ThirdFragment.newInstance("ThirdFragment, Default");
}
}

@Override
public int getCount() {
return 3;
}


{}}}

我正在尝试添加一个 ListView ,我创建了一个名为:list_items.xml 的 xml 文件,但在这一行:“R.layout.list_items”,我收到错误:“布局无法解析或不是字段”,我还收到“标记“R”上的语法错误,删除此标记”。这是为什么?

list_items.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >


</TextView>

最佳答案

我相信您误解了 ArrayAdapter 的构造函数。

您基本上需要做的是将 R.layout.list_items 更改为单个元素布局,就像您在 android.R 中找到的布局一样。

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1, values);

在这里您可以看到第一个参数是上下文,第二个参数是单个项目布局,第三个(可选)是您想要使用字符串集合定位的 TextView 的 ID,最后一个参数是一是 Collection 。

您可以使用自己的布局,就像之前尝试的那样。

如果您有任何问题,我很乐意回答,并在需要时提供一些代码。

关于java - Android:布局无法解析或不是字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22581378/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com