Bre*_*eiz 7 android android-spinner
我正在使用一个微调器,其适配器是动态填充的.
我找不到阻止默认行为的解决方案(即显示点击中只有一个项目的下拉列表).关于如何做到这一点的任何想法?谢谢
嗯...尝试使用setClickable(fasle)或者setEnabled(false)如果只有一个项目spinner.
试试这个
public class SpinnerActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Spinner spinner = (Spinner) findViewById(R.id.spinner1);
List<String> list = new ArrayList<String>();
list.add("list 1");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(dataAdapter);
if (list.size() < 2) {
spinner.setClickable(false);
spinner.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
Toast.makeText(SpinnerActivity.this, "Catch it!", Toast.LENGTH_SHORT).show();
}
return true;
}
});
}
}
}
Run Code Online (Sandbox Code Playgroud)
小智 6
为了防止微调器显示下拉列表,我只在 onTouch(...) 中返回 true,如下所示:
spinner.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
return true;
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9735 次 |
| 最近记录: |