如何在中心设置微调文本并设置分隔符

时间:2016-07-16 07:41:11

标签: android android-studio android-spinner

我想设置一个微调器文本中心并设置一个分隔符。中心设置文本和设置分隔符有问题。微调器项和微调器值也来自服务器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));

}

当前输出

enter image description here

我想要什么

this

2 个答案:

答案 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。