试图渲染两个旋转器使一个旋转器不起作用

时间:2015-09-19 12:31:24

标签: android

我正在尝试在Android活动中渲染两个微调器。他们都必须从string.xml资源文件中获取他们的项目值。

以下是我的代码目前的样子:

@OptionsMenu(R.menu.menu_helper)
@EActivity(R.layout.activity_helper)
public class HelperActivity extends AppCompatActivity {

    @ViewById(R.id.cultureSpinner)
    Spinner cultureSpinner;
    @ViewById(R.id.harvestSpinner)
    Spinner harvestSpinner;

    ArrayAdapter<CharSequence> adapter;

    @AfterViews
    public void initialize() {
        initializeSpinners();
    }

    public void initializeSpinners() {
        adapter = ArrayAdapter.createFromResource(this, R.array.cultures, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        cultureSpinner.setAdapter(adapter);

        adapter = ArrayAdapter.createFromResource(this, R.array.harvestValues, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        cultureSpinner.setAdapter(adapter);
    }
}

样式xml:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="0.55"
            android:fillViewport="true"
            android:orientation="vertical"
            android:showDividers="beginning|end"
    >

    <TableLayout
        android:id="@+id/tableLayout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:padding="10dip"
        >

        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            >

            <Spinner
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/cultureSpinner"
                android:spinnerMode="dropdown"
                />
        </TableRow>

        <Space
            android:layout_height="3dp"/>

        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            >

            <Spinner
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/harvestSpinner"
                android:spinnerMode="dropdown"
                />
        </TableRow>
    </TableLayout>
</ScrollView>

现在,当我启动活动时,第二个微调器显示在第一个微调器之前,第一个微调器由于某种原因而在第二个微调器之下,不起作用。如果我按下它,则不会出现下拉菜单。

这可能是什么问题?

1 个答案:

答案 0 :(得分:1)

public void initializeSpinners() {
        adapter = ArrayAdapter.createFromResource(this, R.array.cultures, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        cultureSpinner.setAdapter(adapter);

        adapter1 = ArrayAdapter.createFromResource(this, R.array.harvestValues, android.R.layout.simple_spinner_item);
        adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        harvestSpinner.setAdapter(adapter1);
    }

试试吧。希望它的工作。