微调文本中心垂直和水平对齐

时间:2014-06-16 06:21:36

标签: android android-spinner

我想在旋转器内垂直和水平居中对齐文本。 我正在关注this site(first tutorial only).

的教程

我的问题是android studio无法找到spinner_center_item,即使它存储在\layout\spinner_center_item.xml位置。

这是我的代码

menu = (Spinner)findViewById(R.id.spinner1);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.optionmenu, android.R.layout.spinner_center_item);
adapter.setDropDownViewResource(android.R.layout.spinner_center_item);
menu.setAdapter(adapter);
menu.setSelection(0);

这是我的主要xml代码

 <Spinner
        android:layout_width="wrap_content"
        android:layout_height="60dp"
        android:id="@+id/spinner1"
        android:entries="@array/optionmenu"
        android:layout_alignParentTop="true"

        android:layout_alignParentStart="true"
        android:layout_toLeftOf="@+id/setting"
        android:background="@drawable/button_border"
        android:textColor="@android:color/white"  />

这是我的代码来自\ layout \ spinner_center_item.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    style="?android:attr/spinnerItemStyle"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="5dp"
    android:paddingTop="5dp"
    android:gravity="center_vertical|center_horizontal"
    />

这是我在string.xml中的代码

 <string-array name="optionmenu">
        <item>Categories</item>
        <item>Calculator</item>
        <item>unit Converter</item>

    </string-array>

这是错误

C:\Users\Samvid\AndroidStudioProjects\SamsUltimateAllPurposeCalculator\app\src\main\java\com\sams\ultimateallpurpose\calculator\Main_Calculator.java
Error:(67, 120) error: cannot find symbol variable spinner_center_item
Error:(68, 57) error: cannot find symbol variable spinner_center_item
Error:Execution failed for task ':app:compileDebugJava'.
> Compilation failed; see the compiler error output for details.

2 个答案:

答案 0 :(得分:4)

从此

更改spinner_center_item.xml的资源ID
android.R.layout.spinner_center_item

到这个

R.layout.spinner_center_item

此处,android.R表示您正在尝试从spinner_center_item.xml包中找到android,但它位于layout文件夹中。

答案 1 :(得分:3)

更改此代码

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.optionmenu, android.R.layout.spinner_center_item);
    adapter.setDropDownViewResource(android.R.layout.spinner_center_item);

来自

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.optionmenu, android.R.layout.spinner_center_item);
    adapter.setDropDownViewResource(R.layout.spinner_center_item);