我正在用微調框構建對話框。當對話框完成時,它使用字符串參數調用父活動的方法 - 參數是所選的字符串值。在微調框中顯示對象而不僅僅是字符串
我目前的做法:
我設置了微調的陣列適配器像這樣:
ArrayAdapter<String> adapter =
new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_item,
categoryNames);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mySpinner.setAdapter(adapter);
categoryNames
是一個字符串數組。完成對話後,所選的categoryName
將用作父活動方法調用的參數。
我真正想做的事:
什麼其實我想要的是顯示Category
對象的列表。 Category
類有2個屬性 - categoryId
和categoryName
。微調器仍然應該在下拉視圖中顯示categoryName
,但是當完成對話時,它應該能夠明確地指出哪個Category
被選中,並且用所選類別的categoryId
調用父活動的回調方法。
可以有多個Category
與categoryName
相同。
問題:如何做到上述?
雖然我已經張貼了答案,如果類別名稱不是唯一的,用戶_將如何區分同名(例如「音樂」和「音樂」)? – Sam
我使用了「category」和「categoryName」隱喻來簡化我的使用案例:) – jrharshath