微调器菜单-Android
我想在我的android应用程序中添加多个微调栏菜单。我是一个初学者,我只创建了一个旋转杆。当我创建下一个时,它不能很好地工作。尝试在此处添加下一个微调器,但当我添加时,它会在第一个微调器中显示第二个表中的值。它应该是第一个旋转器-第一张桌子等。提前感谢您的帮助 公共类SecondPan扩展AppCompative实现AdapterView.OnItemSelectedListener{ 专用微调器sspnOption6,sspn2; 私有文本视图ttxOption6,ttx; @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity\u second\u pan); 微调器微调器=findViewById(R.id.sspn); ArrayAdapter=ArrayAdapter.createFromResource(这个,R.array.tab1,android.R.layout.simple\u微调器\u项); setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项); 旋转器。设置适配器(适配器); spinner.setOnItemSelectedListener(此); } @凌驾 已选择公共视图(AdapterView父视图、视图视图、整型位置、长l){ String text=parent.getItemAtPosition(position.toString(); Toast.makeText(parent.getContext(),text,Toast.LENGTH_SHORT.show(); } @凌驾 未选择公共无效(AdapterView AdapterView){ } }微调器菜单-Android,android,menu,spinner,Android,Menu,Spinner,我想在我的android应用程序中添加多个微调栏菜单。我是一个初学者,我只创建了一个旋转杆。当我创建下一个时,它不能很好地工作。尝试在此处添加下一个微调器,但当我添加时,它会在第一个微调器中显示第二个表中的值。它应该是第一个旋转器-第一张桌子等。提前感谢您的帮助 公共类SecondPan扩展AppCompative实现AdapterView.OnItemSelectedListener{ 专用微调器sspnOption6,sspn2; 私有文本视图ttxOption6,ttx; @凌驾 创建时受
您声明了两个
微调器
sspnOption6和sspn2,但您从未使用过它们。此外,您只获得了一个id为sspn的微调器的参考
所以现在获取对另一个id的引用,并为它们创建不同的ArrayAdapter
,这样您就不会为所选位置获取第二个微调器中第一个微调器的值
做出这些改变
在onCreate()之前,您已经声明了两个微调器:
获取这些视图的引用,您之前只有一个
// Check your id's from layout.
sspnOption6Spinner = findViewById(R.id.sspn_options6);
sspn2Spinner = findViewById(R.id.sspn);
设置ArrayAdapters
ArrayAdapter<CharSequence> firstSpinnerAdapter = ArrayAdapter.createFromResource(this,R.array.tab1, android.R.layout.simple_spinner_item);
firstSpinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sspnOption6Spinner.setAdapter(adapter);
ArrayAdapter firstSpinnerAdapter=ArrayAdapter.createFromResource(这个,R.array.tab1,android.R.layout.simple\u微调器\u项);
firstSpinnerAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
sspnOption6Spinner.setAdapter(适配器);
ArrayAdapter secondSpinnerAdapter=ArrayAdapter.createFromResource(这个,R.array.tab2,android.R.layout.simple\u微调器\u项);
secondSpinnerAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
sspn2Spinner.setAdapter(适配器);
现在设置侦听器,两者都应该有自己的:
sspnOption6Spinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String text = parent.getItemAtPosition(position).toString();
Toast.makeText(parent.getContext(),text, Toast.LENGTH_SHORT).show();
}
});
sspnOption6Spinner.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
String text=parent.getItemAtPosition(position.toString();
Toast.makeText(parent.getContext(),text,Toast.LENGTH_SHORT.show();
}
});
sspn2Spinner.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
String text=parent.getItemAtPosition(position.toString();
Toast.makeText(parent.getContext(),text,Toast.LENGTH_SHORT.show();
}
});
如果需要,您可以设置onNothingSelected()
也请阅读,它包含所有详细信息。您已经声明了两个
微调器sspnOption6和sspn2,但您从未使用过它们。此外,您只获得了一个id为sspn的微调器的参考
所以现在获取对另一个id的引用,并为它们创建不同的ArrayAdapter
,这样您就不会为所选位置获取第二个微调器中第一个微调器的值
做出这些改变
在onCreate()之前,您已经声明了两个微调器:
获取这些视图的引用,您之前只有一个
// Check your id's from layout.
sspnOption6Spinner = findViewById(R.id.sspn_options6);
sspn2Spinner = findViewById(R.id.sspn);
设置ArrayAdapters
ArrayAdapter<CharSequence> firstSpinnerAdapter = ArrayAdapter.createFromResource(this,R.array.tab1, android.R.layout.simple_spinner_item);
firstSpinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sspnOption6Spinner.setAdapter(adapter);
ArrayAdapter firstSpinnerAdapter=ArrayAdapter.createFromResource(这个,R.array.tab1,android.R.layout.simple\u微调器\u项);
firstSpinnerAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
sspnOption6Spinner.setAdapter(适配器);
ArrayAdapter secondSpinnerAdapter=ArrayAdapter.createFromResource(这个,R.array.tab2,android.R.layout.simple\u微调器\u项);
secondSpinnerAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
sspn2Spinner.setAdapter(适配器);
现在设置侦听器,两者都应该有自己的:
sspnOption6Spinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String text = parent.getItemAtPosition(position).toString();
Toast.makeText(parent.getContext(),text, Toast.LENGTH_SHORT).show();
}
});
sspnOption6Spinner.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
String text=parent.getItemAtPosition(position.toString();
Toast.makeText(parent.getContext(),text,Toast.LENGTH_SHORT.show();
}
});
sspn2Spinner.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
String text=parent.getItemAtPosition(position.toString();
Toast.makeText(parent.getContext(),text,Toast.LENGTH_SHORT.show();
}
});
如果需要,您可以设置onNothingSelected()
也请阅读,它有所有的细节。我已经创建了这样的smth,但仍然有错误,你能在空闲时间看一下吗?谢谢
在这里输入代码
public class SecondPan extends AppCompatActivity {
private Spinner spinner;
private Spinner spinner2;
private TextView ttxOption6,ttx;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second_pan);
spinner = findViewById(R.id.sspn);
ArrayAdapter<CharSequence> firstSpinnerAdapter = ArrayAdapter.createFromResource(this,R.array.tab1, android.R.layout.simple_spinner_item);
firstSpinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(firstSpinnerAdapter);
spinner2 = findViewById(R.id.sspn2);
ArrayAdapter<CharSequence> secondSpinnerAdapter = ArrayAdapter.createFromResource(this,R.array.transfer, android.R.layout.simple_spinner_item);
secondSpinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(secondSpinnerAdapter);
}
spinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String text = parent.getItemAtPosition(position).toString();
Toast.makeText(parent.getContext(),text, Toast.LENGTH_SHORT).show();
}
});
spinner2.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String text = parent.getItemAtPosition(position).toString();
Toast.makeText(parent.getContext(),text, Toast.LENGTH_SHORT).show();
}
});
public class SecondPan扩展AppCompative活动{
私人纺纱机;
私人纺纱机纺纱机2;
私有文本视图ttxOption6,ttx;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCr