SQLite数据库值与微调器列表项进行比较,并将该值设置为微调器中的第一项

时间:2018-11-13 09:13:10

标签: android sqlite spinner

客户名称存储在SQLite数据库表中。我需要将该客户名称与微调器项目列表进行比较。如果该名称与微调器列表中的名称匹配,则从该名称开始列表。 在此先感谢!!!

1 个答案:

答案 0 :(得分:0)

尝试一下, Java

public class Main2Activity extends AppCompatActivity {
Spinner spinner;
ArrayList<String> spinner_arr = new ArrayList<>();
ArrayAdapter aa;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);
    spinner_arr.add("John");
    spinner_arr.add("Tom");
    spinner_arr.add("Kelly");
    spinner_arr.add("Sandy");

    spinner = findViewById(R.id.spinner);
    aa = new ArrayAdapter(this, android.R.layout.simple_list_item_1, spinner_arr);
    spinner.setAdapter(aa);


}
 //check customer name is available in sqlite db
public void compareClick(View view) {
    //fetch sqlite data here(like customer name),suppose customer name is 'Tom'
    String db_cust_name = "Tom";
    for (int i = 0; i < spinner_arr.size(); i++) {
        if (db_cust_name.equals(spinner_arr.get(i))) {
            spinner_arr.subList(0, i).clear();
            aa.notifyDataSetChanged();
        }
    }
}}

xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">

<Spinner
    android:id="@+id/spinner"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="5dp"/>


<Button
    android:onClick="compareClick"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Compare" />

如果您需要更多说明,请告诉我。