我有一個問題,就像我有一個包含在公司工作的所有開發人員姓名的微調器一樣。
我已經使用ArrayAdapter
與一個數組,其名稱爲所有開發人員從數據庫中提取。如何在Android中設置並獲取微調器中的項目的編號
問題是,當我更新開發人員名稱字段時,我得到的開發人員名稱不足以更新數據,因爲他們可能是公司中具有相同名稱的多個開發人員。
所以現在我需要開發者的ID來更新它..
如何存儲與Spinner
開發商ID,這樣我可以做到這一點。
例如,我想去做是我們在做HTML
::
<select>
<option id="1">Developer1</option>
<option id="2">Developer2</option>
<option id="3">Developer2</option>
<option id="4">Developer2</option>
</select>
其中ID連接將是數據庫ID。
我想在android中模仿這個。
這是我用當您執行setOnItemSelectedListener上的名字存儲陣列::
String alldevelopers = null;
try
{
ArrayList<NameValuePair> postP = new ArrayList<NameValuePair>();
alldevelopers = CustomHttpClient.executeHttpPost("/fetchdevelopers.php", postP);
String respcl = alldevelopers.toString();
alldevelopersParser dev = new alldevelopersParser();
ow = dev.parseByDOM(respcl);
}
catch (Exception e) {
e.printStackTrace();
}
String developers[] = new String[ow.length]; //dev is a class object
for (int n = 0; n < ow.length; n++)
{
developers[n] = ow.developer[n][2];
}
這是將旋轉陣列的微調..
final Spinner devl = (Spinner) findViewById(R.id.towner);
devl.setOnItemSelectedListener(managetasks.this);
ArrayAdapter<String> b =
new ArrayAdapter<String>getApplicationContext(),
android.R.layout.simple_spinner_item,developers);
b.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
devl.setAdapter(b);
一個問題:微調器是否加載了與數據庫中的順序相同的開發者名稱?考慮微調器內項目的位置,以確定相同位置的db中編程人員的ID可能是有用的嗎? – Ant4res 2012-03-31 07:58:36
是的......加載的順序與數據庫的順序相同......但是那麼開發人員的id不會以增量的方式出現,就好像某些開發人員被刪除了那麼他們的id就會丟失在列表中...所以我們無法直接將itemSelected位置與數據庫中id的位置進行比較......是他們的任何其他方式,我的親愛的朋友會根據ItemSelectedposition數字來搜索數據庫。 – 2012-03-31 09:19:52