Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么赢了';“我的微调器”是否运行它所连接到的选定对象(即使它单击)?_Java_Android - Fatal编程技术网

Java 为什么赢了';“我的微调器”是否运行它所连接到的选定对象(即使它单击)?

Java 为什么赢了';“我的微调器”是否运行它所连接到的选定对象(即使它单击)?,java,android,Java,Android,我正在尝试将微调器添加到我的一个活动中,在该活动中,我可以从一组字段向微调器动态添加项目,以便当我单击该微调器中的项目时,它会重新填充这些字段。将字段中的项目添加到侦听器效果很好,但是当我尝试单击微调器以重新填充字段时。这仍然是一项正在进行的工作,因此有多余的代码 这是正在运行的类的代码 package com.SpurFlys.pocketscout; import java.util.*; import android.app.Activity; import android.conte

我正在尝试将微调器添加到我的一个活动中,在该活动中,我可以从一组字段向微调器动态添加项目,以便当我单击该微调器中的项目时,它会重新填充这些字段。将字段中的项目添加到侦听器效果很好,但是当我尝试单击微调器以重新填充字段时。这仍然是一项正在进行的工作,因此有多余的代码

这是正在运行的类的代码

package com.SpurFlys.pocketscout;

import java.util.*;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;

public class TeamSelection extends Activity implements OnItemSelectedListener{

private Spinner spinner;
private static final List<String> paths = new ArrayList<String>();
private String tournamentName;
Tournament tournament = new Tournament(); 
EditText mEdit1;
EditText mEdit2;
EditText mEdit3;
EditText mEdit4;
EditText mEdit5;
EditText mEdit6;

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

    Intent intent = getIntent();
    tournamentName = intent.getExtras().getString("tournamentName");
    tournament.name = tournamentName;

    spinner = (Spinner)findViewById(R.id.spinner);
    ArrayAdapter<String>adapter = new ArrayAdapter<String>(TeamSelection.this, android.R.layout.simple_spinner_item,paths);

    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(this);

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.team_selection, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    if (id == R.id.action_settings) {
        return true;
    }
    return super.onOptionsItemSelected(item);
}

@Override
public void onItemSelected(AdapterView<?> parent, View v, int position, long id) {

    String teamNumber = tournament.teamIndex.get(position);
    mEdit1.setText(teamNumber);
    String[] temp = tournament.teams.get(teamNumber);
    String auton = temp[0];
    mEdit2.setText(auton);
    String chassis = temp[1];
    mEdit3.setText(chassis);
    String arm = temp[2];
    mEdit4.setText(arm);
    String intake = temp[3];
    mEdit5.setText(intake);
    String other = temp[4];
    mEdit6.setText(other);
}

@Override
public void onNothingSelected(AdapterView<?> parent) {
    // TODO Auto-generated method stub

}

public void addTeam(View view){
    mEdit1 = (EditText)findViewById(R.id.editText1);
    mEdit2 = (EditText)findViewById(R.id.editText2);
    mEdit3 = (EditText)findViewById(R.id.editText3);
    mEdit4 = (EditText)findViewById(R.id.editText4);
    mEdit5 = (EditText)findViewById(R.id.editText5);
    mEdit6 = (EditText)findViewById(R.id.editText6);
    String teamNumber = mEdit1.getText().toString();
    String auton = mEdit2.getText().toString();
    String chassis = mEdit3.getText().toString();
    String arm = mEdit4.getText().toString();
    String intake = mEdit5.getText().toString();
    String other = mEdit6.getText().toString();
    if(teamNumber.trim().equals("")){
        Toast.makeText(this, "Blank is not a valid team number", Toast.LENGTH_LONG).show();
    }
    else{
        paths.add(teamNumber);
        tournament.createTeam(teamNumber, auton, chassis, arm, intake, other, paths.indexOf(teamNumber));
        mEdit1.setText("");
        mEdit2.setText("");
        mEdit3.setText("");
        mEdit4.setText("");
        mEdit5.setText("");
        mEdit6.setText("");
    }
}
}
包com.SpurFlys.pocketscout;
导入java.util.*;
导入android.app.Activity;
导入android.content.Intent;
导入android.os.Bundle;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.AdapterView.OnItemSelectedListener;
导入android.widget.ArrayAdapter;
导入android.widget.EditText;
导入android.widget.Spinner;
导入android.widget.Toast;
公共类TeamSelection扩展活动实现了MSelectedListener{
私人纺纱机;
私有静态最终列表路径=新ArrayList();
私人字符串锦标赛名称;
锦标赛=新锦标赛();
编辑文本mEdit1;
编辑文本媒介2;
编辑文本mEdit3;
编辑文本媒介4;
编辑文本mEdit5;
编辑文本媒介6;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u team\u selection);
Intent=getIntent();
tournamentName=intent.getExtras().getString(“tournamentName”);
tournament.name=tournamentName;
微调器=(微调器)findViewById(R.id.spinner);
ArrayAdapteradapter=新的ArrayAdapter(TeamSelection.this,android.R.layout.simple\u微调器\u项,路径);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
spinner.setOnItemSelectedListener(此);
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.team_选择,菜单);
返回true;
}
@凌驾
公共布尔值onOptionsItemSelected(菜单项项){
//处理操作栏项目单击此处。操作栏将
//自动处理Home/Up按钮上的点击,只要
//在AndroidManifest.xml中指定父活动时。
int id=item.getItemId();
if(id==R.id.action\u设置){
返回true;
}
返回super.onOptionsItemSelected(项目);
}
@凌驾
已选择公共位置(AdapterView父视图、视图v、整型位置、长id){
String teamNumber=锦标赛.teamIndex.get(位置);
mEdit1.setText(团队编号);
String[]temp=锦标赛.teams.get(teamNumber);
字符串auton=temp[0];
mEdit2.setText(自动);
字符串机箱=温度[1];
mEdit3.setText(机箱);
串臂=温度[2];
mEdit4.setText(arm);
管柱入口=温度[3];
mEdit5.setText(摄入);
字符串other=temp[4];
mEdit6.setText(其他);
}
@凌驾
未选择公共无效(AdapterView父级){
//TODO自动生成的方法存根
}
公共void addTeam(视图){
mEdit1=(EditText)findViewById(R.id.editText1);
mEdit2=(EditText)findViewById(R.id.editText2);
mEdit3=(EditText)findViewById(R.id.editText3);
mEdit4=(EditText)findViewById(R.id.editText4);
mEdit5=(EditText)findViewById(R.id.editText5);
mEdit6=(EditText)findViewById(R.id.editText6);
字符串teamNumber=mEdit1.getText().toString();
字符串auton=mEdit2.getText().toString();
字符串chassis=mEdit3.getText().toString();
String arm=mEdit4.getText().toString();
字符串摄入量=mEdit5.getText().toString();
字符串other=mEdit6.getText().toString();
if(teamNumber.trim()等于(“”){
Toast.makeText(此“空白不是有效的团队编号”,Toast.LENGTH_LONG.show();
}
否则{
路径。添加(团队编号);
createTeam(组号、自动、底盘、手臂、进气、其他、路径)indexOf(组号));
mEdit1.setText(“”);
mEdit2.setText(“”);
mEdit3.setText(“”);
mEdit4.setText(“”);
mEdit5.setText(“”);
mEdit6.SETEXT(“”);
}
}
}
这是活动的代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:contentDescription="@string/teams"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.SpurFlys.pocketscout.TeamSelection" >

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="11dp"
    android:onClick="addTeam"
    android:text="@string/add_team" />

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/spinner"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="18dp"
    android:ems="10"
    android:hint="@string/team_number" />

<Spinner
    android:id="@+id/spinner"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="10dp"
    android:contentDescription="@string/teams" />

<EditText
    android:id="@+id/editText2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/editText1"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="18dp"
    android:ems="10"
    android:hint="@string/auton"
    android:inputType="textMultiLine" />

<EditText
    android:id="@+id/editText3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/editText2"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="18dp"
    android:ems="10"
    android:hint="@string/chassis"
    android:inputType="textMultiLine" >

    <requestFocus />
</EditText>

<EditText
    android:id="@+id/editText4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/editText3"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="18dp"
    android:ems="10"
    android:hint="@string/arm"
    android:inputType="textMultiLine" />

<EditText
    android:id="@+id/editText5"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/editText4"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="18dp"
    android:ems="10"
    android:hint="@string/intake"
    android:inputType="textMultiLine" />

<EditText
    android:id="@+id/editText6"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/editText5"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="18dp"
    android:ems="10"
    android:hint="@string/other"
    android:inputType="textMultiLine" />

</RelativeLayout>

这是调用的锦标赛对象的代码

package com.SpurFlys.pocketscout;

import java.util.*;

public class Tournament {

public String name;
public String date;
public String address;
public String city;
public String state;
public String country;
public String postalCode;
public Map<String, String[]> teams;
public Map<String, String> teamIndex = new HashMap<String, String>();
String[] tempTeam;

public Tournament() {
    teams = new HashMap<String, String[]>();
    tempTeam = new String[5];

}

public void createTeam(String number, String auton, String chassis, String arm, String intake, String other, int index){
    teamIndex.put(Integer.valueOf(index).toString(), number);
    tempTeam[0] = auton;
    tempTeam[1] = chassis;
    tempTeam[2] = arm;
    tempTeam[3] = intake;
    tempTeam[4] = other;

    teams.put(number, tempTeam);

}

}
package com.SpurFlys.pocketscout;
导入java.util.*;
公开课比赛{
公共字符串名称;
公共字符串日期;
公共字符串地址;
公共字符串城市;
公共字符串状态;
公共字符串国家;
公共字符串后代码;
公共地图小组;
publicmap teamIndex=newhashmap();
字符串[]teteam;
公开赛(){
teams=newhashmap();
TENTEAM=新字符串[5];
}
public void createTeam(字符串编号、字符串自动、字符串机箱、字符串臂、字符串入口、字符串其他、int索引){
teamIndex.put(Integer.valueOf(index.toString(),number);
TESTEAM[0]=auton;
TESTEAM[1]=底盘;
TESTEAM[2]=手臂;
TESTEAM[3]=取水口;
TESTEAM[4]=其他;
团队。put(编号,EAM);
}
}
@覆盖
已选择公共位置(AdapterView父视图、视图v、整型位置、长id){
//您应该打开视图,因为该类正在实现OnItemSelectedListener
开关(v.getId()){
案例(R.id.spinner):
//设置mEdit1.setText(组号)等的逻辑。。
打破
}
}

由于您为活动实现了onItemSelectedListener,因此必须设置窗体对象在被选中时应执行的操作的情况。假设你有另一个纺纱机。该微调器还将使用
this
作为设置
onItemSelectedListener
的参数。应用程序无法知道在每个实例中应该做什么,除非它知道选择了哪个
视图。

在选定的视图中打印日志消息,然后
    @Override
    public void onItemSelected(AdapterView<?> parent, View v, int position, long id) {
                //you should be switching on the view, since the class is implementing onItemSelectedListenter
        switch(v.getId()){
            case (R.id.spinner):
                //logic for setting mEdit1.setText(teamNumber), etc..
            break;
        }
}