我在 android 项目中使用微调器。一切都很好。唯一的问题是微调器没有显示我想要的方式。
这是它看起来像的图像:
但我希望它看起来像这样:
我在 android 项目中使用微调器。一切都很好。唯一的问题是微调器没有显示我想要的方式。
这是它看起来像的图像:
但我希望它看起来像这样:
您可以参考下面的代码。此代码将生成带有下拉箭头的微调器外观。它是通过以下方式实现的
android.R.layout.simple_spinner_item
由 ArrayAdapter 指定。要更改其样式,您可以使用不同的布局,您可以在此处找到
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.AdapterView.OnItemSelectedListener;
public class MainActivity extends Activity {
Spinner spin;
String spin_val;
String[] gender = { "Male", "Female" };//array of strings used to populate the spinner
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);//setting layout
spin = (Spinner) findViewById(R.id.spinner_id);//fetching view's id
//Register a callback to be invoked when an item in this AdapterView has been selected
spin.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int position, long id) {
// TODO Auto-generated method stub
spin_val = gender[position];//saving the value selected
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
//setting array adaptors to spinners
//ArrayAdapter is a BaseAdapter that is backed by an array of arbitrary objects
ArrayAdapter<String> spin_adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_item, gender);
// setting adapteers to spinners
spin.setAdapter(spin_adapter);
}
}
屏幕.xml
<Spinner
android:id="@+id/spinner_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
你在这里有这个演示项目供你参考。
希望这可以帮助。