【发布时间】:2013-01-22 23:43:20
【问题描述】:
我有一个带有微调控件和文本框的表单;并且表存储在 SQLite 数据库中。
我在活动的 onCreate 方法中填充微调器。调用数据库查询和更新 ui 的地方是正确的吗?
根据用户从微调器中选择的值,我必须在文本框中给出自动建议。 (我可以使用哪个控件代替文本框,我想强制用户从来自数据库的列表中进行选择。)
我也听说过片段,谁能指导我对提高应用程序的性能有帮助吗?
【问题讨论】:
标签: android
我有一个带有微调控件和文本框的表单;并且表存储在 SQLite 数据库中。
我在活动的 onCreate 方法中填充微调器。调用数据库查询和更新 ui 的地方是正确的吗?
根据用户从微调器中选择的值,我必须在文本框中给出自动建议。 (我可以使用哪个控件代替文本框,我想强制用户从来自数据库的列表中进行选择。)
我也听说过片段,谁能指导我对提高应用程序的性能有帮助吗?
【问题讨论】:
标签: android
您必须使用您想要提供给用户的那一刻起的数据填充您的微调器。所以就在包含Activity的onCreate中。
更多信息我猜Spinner | Android Developers。
片段使您能够为您的 UI 创建独立的部分。例如一个片段,它包含一个列表和另一个显示所选元素的详细信息的片段。在平板电脑上,您可以将两者并排显示。在小型显示手持设备上,您必须显示列表并在项目选择时显示详细信息。使用 Fragments,您可以重用。看看这里Fragments | Android Developers - 如果您将使用 Fragments,我建议您阅读此内容。它会为您省去麻烦。
【讨论】:
你最好在 onCreate 方法中调用一个函数并在该函数中填充微调器值
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.spinner);
addItemsOnSpinner1();
}
public void addItemsOnSpinner1() {
Spinner spinner = (Spinner) findViewById(R.id.spinnerSource);
List<String> list = new ArrayList<String>();
list.add("sony");
list.add("apple");
list.add("samsung");
list.add("htc");
list.add("blackberry");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Collections.sort(list);
spinner.setAdapter(dataAdapter);
对于使用片段,请使用此链接When should I use fragments in Android applications ? Why to use fragments?
【讨论】: