填充微调框的最佳做法?

时间:2018-09-06 15:02:16

标签: android android-layout spinner android-spinner

最近,我在一个项目中工作,该项目的Spinner值很少。 这些值是静态的,我将它们存储到资源中的数组中。

<string-array name="my_array">
    <item>Value 1</item>
    <item>Value 2</item>
    <item>Value 3</item>
    <item>Value 4</item>
</string-array>

使用Spinner填充ArrayAdapter很简单(有关更多信息,请检查:Android Developer: Spinners), 但我知道也可以通过直接在 .xml 中添加Spinner来填充android:entries="@array/my_array"

在填充ArrayAdapter时,我总是选择

Spinner,但是我想知道,有哪些最佳实践,直接在中填充这样的简单微调器有什么缺点吗? .xml ,因为它将使一个类的代码更少,更简洁,更易读?

1 个答案:

答案 0 :(得分:1)

这完全取决于您的用例。

由于您使用的都是XML静态值,因此最好使用XML选项让Android加载数组并为您创建适配器。您知道值应该是什么,并且它们不会改变。

但是,假设您正在使用app制作应用程序,则该应用程序允许用户选择他们要使用哪个本地Google帐户登录到您的服务。一种方法是让Spinner填充用户当前添加的Google帐户。显然,您无法在XML中定义它们,因为您不知道它们将是什么,或它们何时会更改。在此处动态加载值并填充Spinner很有用。

当然,如果您不想使用XML,或者需要自定义适配器,也可以通过编程方式全部完成。