Android 如何在运行时浇注旋转器?

Android 如何在运行时浇注旋转器?,android,android-arrayadapter,Android,Android Arrayadapter,我不知道出了什么问题,我只想在运行时填充微调器。但当我在手机上运行我的应用程序时,它会用我的类路径填充微调器。下面是我正在做的代码 public class FullscreenActivity extends Activity { Spinner spSelectTeam; TextView tvTeam; ArrayList<TeamClass> teamClasses; @Override public void onCreate(Bu

我不知道出了什么问题,我只想在运行时填充微调器。但当我在手机上运行我的应用程序时,它会用我的类路径填充微调器。下面是我正在做的代码

public class FullscreenActivity extends Activity {
    Spinner spSelectTeam;
    TextView tvTeam;
    ArrayList<TeamClass> teamClasses;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout2);
        init();
        teamClasses = populateList();
        //applying adapter
        ArrayAdapter myAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, teamClasses);
        spSelectTeam.setAdapter(myAdapter);
    }

    void init(){
        spSelectTeam = (Spinner) findViewById(R.id.sp_team);
        tvTeam = (TextView) findViewById(R.id.tv_team);
    }

    public ArrayList<TeamClass> populateList() {
        //ArrayList<TeamClass> myTeamName = new ArrayList<TeamClass>();
        ArrayList<TeamClass> teamClasses = new ArrayList<>();
        teamClasses.add(new TeamClass("----- All -----"));
        teamClasses.add(new TeamClass("Computer Direct"));
        teamClasses.add(new TeamClass("Datasys"));
        teamClasses.add(new TeamClass("Host Interactive"));
        return teamClasses;
    }
}

请帮忙。提前感谢

您需要为
团队类
重写
toString()

试试这个

  @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout2);
        init();
        teamClasses = populateList();

        //applying adapter

        ArrayAdapter myAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, teamClasses);
myAdapter .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

 spSelectTeam.setAdapter(myAdapter);



    }

添加您的
TeamClass

 @Override
 public String toString() {
    return this.TeamName ;
}
还可以使用以下命令更改代码,如

List<TeamClass> teamClasses;

teamClasses = populateList();

public List<TeamClass> populateList() {
    List<TeamClass> teamClasses = new ArrayList<TeamClass>();
    teamClasses.add(new TeamClass("----- All -----"));
    teamClasses.add(new TeamClass("Computer Direct"));
    teamClasses.add(new TeamClass("Datasys"));
    teamClasses.add(new TeamClass("Host Interactive"));
    return teamClasses;
}
列出团队类;
teamClasses=populateList();
公共列表populateList(){
List teamClasses=new ArrayList();
添加(新的TeamClass(“----全部------”);
添加(新的TeamClass(“计算机直接”));
添加(新的TeamClass(“数据系统”);
添加(新的TeamClass(“主机交互”));
返回班;
}

只需将以下内容添加到您的TeamClass中:

@Override
public String toString() {
    return getTeamName();
}

但是,他还需要扩展
BaseAdapter
类,以便提供自定义布局,尽管在这种情况下,他可以像barq建议的那样重写
toString()
方法。这个方法可以帮助我。如何更改微调器中文本的颜色?它是白色的,我想换成黑色
@Override
public String toString() {
    return getTeamName();
}