0

私のレイアウトxmlにはスピナーがあり、Javaには連絡先といくつかの値を含むデータベースがあるので、データベースからこれらの値をスピナーに送信または配置する方法を知りたいので、クリックすると、連絡先、コードの例はありますか?

4

3 に答える 3

1

最初にデータベースから連絡先の詳細を取得します。データベースコンセプトのサンプルコードは、http://codinglookseasy.blogspot.in/2012/08/sqlite-database.htmlにあります。次に、上記のサンプルから、オブジェクトのArrayListを取得し、スピナーで連絡先名を設定している可能性があります。

ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
    android.R.layout.simple_spinner_item, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(dataAdapter);

ここでのリストは、データベースのArrayListのデータである可能性があります。(データベースからこのリストに表示する特定のフィールドを格納します)。を使用して選択したアイテムを取得します

spinner2.getSelectedItem() 

これにより、選択されたアイテムが提供され、データベースから取得したArrayListからデータを取得します。

于 2012-09-11T17:17:51.400 に答える
0

ちょうど試して

//Initialize  the spinner view
Spinner spinnerContact = (Spinnner) findViewById(R.id.spinner);

//Initialise List Variable
List<String> contactsList = databaseObj.getContacts;

// Create and Implement Adapter for spinner
ArrayAdapter<String> contactAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, contactsList );

//set drop down view for spinner
contactAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

//set adapter for spinner
spinnerContact.setAdapter(contactAdapter);

//select the item in spinner defaultly
spinnerContact.setSelection(position);

//get Selected Item Text from the spinner
spinnerContact.getSelectedItem();
于 2012-09-11T17:25:55.357 に答える
0

メインアクティビティであなたを考慮してください

 public class MainActivity extends Activity {

   private List<String> contactList;
    private Spinner spinnerComp;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.spinnerdemo);
       spinnerComp= (Spinner) findViewById(R.id.spinner1);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item, getContacts());
    adapter                 .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    spinnerComp.setAdapter(adapter);

    spinnerComp.setSelection(0);
}

getContacts()には次のように含まれています。

// get Contact Names
private List<String> getContacts() {
    // get Contacts
    List<Contact> contacts = DBHelper.getContacts();
    List<String> contactNames = null;
    if (contacts.size() != 0) {
        contactNames = new ArrayList<String>();
        for (Contact contact : Contacts) {
            String contactName = contact.getName();
            contactNames.add(contactName);
        }

    } 
    return contactNames;
}

DbHelper.java内

  public List<Contact> getAllContacts() {
    String sql = "SELECT * FROM " + Table.CONTACT + " ORDER BY " + 
        Contact.Column.NAME + " ASC";

    List<Contact> contacts = new ArrayList<Contact>();
    Cursor cursor = database.rawQuery(sql, null);
    while(cursor.moveToNext()) {
        Contact contact = getContactFromCursor(cursor);
        if(Contact != null) {
            contacts.add(Contact);
        }
    }
    cursor.close();

    return contacts;
}

private Contact getContactFromCursor(Cursor cursor) {
    long id = cursor.getLong(cursor.getColumnIndex(Contact.Column.ID));
    String name = cursor.getString(cursor.getColumnIndex(Contact.Column.NAME));
    long phoneNumber = cursor.getLong(cursor.getColumnIndex(Contact.Column.DATE_OF_BIRTH));
    Contact Contact = new Contact(name, phoneNumber);
    Contact.setId(id);
    return Contact;
}
于 2012-09-11T18:42:26.667 に答える