首页 > 解决方案 > 当我使用 if else 然后将值传递给 setonClick 时,如何获取微调器值?

问题描述

当我使用 if else 然后将值传递给 setonClick 时,如何获取微调器值?

在我的代码中,我使用这种方法来设置微调器值

DatabaseReference chk_sub  = FirebaseDatabase.getInstance()......
chk_sub.addValueEventListener(new ValueEventListener() {
if(xxxxxx){
List<String> sub = new ArrayList<>();
sub.add(0, getApplicationContext().getResources().getString(R.string.choose_sub));
sub.add("USA");
sub.add("CA");
ArrayAdapter<String> dataSpinnerAdapter;
dataSpinnerAdapter = new ArrayAdapter(getApplication(), android.R.layout.simple_spinner_item, sub);
                    dataSpinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(dataSpinnerAdapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                            if(parent.getItemAtPosition(position).equals(getApplicationContext().getResources().getString(R.string.choose_sub))){
    //do nothing
} else {
    spinner_item = parent.getItemAtPosition(position).toString();
    //Toast.makeText(parent.getContext(),"Selected : "+item, Toast.LENGTH_SHORT).show();
       }
   }
} 


我希望我能得到 spinner sub value 因为我需要判断

post.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if( --  how can get spinner value in here? --){
                   //  
                }else {
Toast.makeText(getApplication(), getApplicationContext().getResources().getString(R.string.must_upload), Toast.LENGTH_SHORT).show();
                }

            }
        });

标签: androidandroid-spinner

解决方案


如果您只想在帖子的点击事件(即 post.onClick() )的 if(condition=spinner value) 中使用选定的微调器项目,只需获取微调器选定的项目

您的代码将如下所示

post.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(spinner.getSelectedItem().equals("your compare value")){
                   // do whatever you want
                }else {
Toast.makeText(getApplication(), getApplicationContext().getResources().getString(R.string.must_upload), Toast.LENGTH_SHORT).show();
                }

            }
        });

推荐阅读