我想设置一个微调器文本中心并设置一个分隔符。中心设置文本和设置分隔符有问题。微调器项和微调器值也来自服务器json。
这是我的代码:
XML:
<Spinner
android:id="@+id/txtSpinner"
android:layout_width="fill_parent"
style="@android:style/Widget.Holo.Light.Spinner"
android:dropDownVerticalOffset="28dp"
android:gravity="center_horizontal"
android:textAlignment="center"
android:layout_height="45dp"
/>
Java代码:
private void getSpinnerData() {
final ProgressDialog loading = ProgressDialog.show(this, "Loading Data", "Please wait...", false, false);
loading.setCancelable(true);
StringRequest stringRequest = new StringRequest(spinner_url,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
loading.dismiss();
JSONObject j_obj = null;
try {
j_obj = new JSONObject(response);
result = j_obj.getJSONArray("data");
getdata(result);
} catch (JSONException e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
private void getdata(JSONArray j) {
for (int i = 0; i < j.length(); i++) {
try {
JSONObject json = j.getJSONObject(i);
spinnerlist.add(json.getString("category"));
} catch (JSONException e) {
e.printStackTrace();
}
}
//Setting adapter to show the items in the spinner
txtSpinner.setAdapter(new ArrayAdapter<String>(TextActivity.this, android.R.layout.simple_spinner_dropdown_item, spinnerlist));
}
当前输出
我想要什么
答案 0 :(得分:1)
我的回答是在这里工作......
创建新样式
<style name="ThemeName" parent="@android:style/Widget.Holo.Light.Spinner">
<item name="android:dropDownListViewStyle">@style/mySpinnerStyle</item>
</style>
<style name="mySpinnerStyle" parent="@style/Widget.AppCompat.Spinner.Underlined">
<item name="android:divider">#000</item>
<item name="android:dividerHeight">1dp</item>
</style>
答案 1 :(得分:0)
您可以自定义Spinner以使其成为您想要的任何内容。如果您只想设置分隔符,则只需使用divider自定义spinner_dropdown_item.xml。