【发布时间】:2016-05-07 11:33:24
【问题描述】:
我发现很多类似的问题,我见过的大多数都是在 Java 中,问题是我不知道如何将 Java 代码转换为 C# Xamarin。
这是我找到的代码:from here
month.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int pos, long id) {
// TODO Auto-generated method stub
List<String> s = Arrays.asList(getResources().getStringArray(R.array.item_day));
if (pos == 0 || pos == 2 || pos == 4 || pos == 8 || pos == 9
|| pos == 11) {
ArrayAdapter<String> dayadapter = new ArrayAdapter<String>(Latlondemo.this, android.R.layout.simple_spinner_item,s);
day.setAdapter(dayadapter);
} else if (pos == 1) {
s = s.subList(0,28);
ArrayAdapter<String> dayadapter = new ArrayAdapter<String>(Latlondemo.this, android.R.layout.simple_spinner_item,s);
day.setAdapter(dayadapter);
} else {
s = s.subList(0,30);
ArrayAdapter<String> dayadapter = new ArrayAdapter<String>(Latlondemo.this, android.R.layout.simple_spinner_item,s);
day.setAdapter(dayadapter);
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
我特指这一行:
List<String> s = Arrays.asList(getResources().getStringArray(R.array.item_day));
它的 C# 对应物是什么?
到目前为止,这是我的代码:
spinner1 = FindViewById<Spinner>(Resource.Id.spinner1);
spinner2 = FindViewById<Spinner>(Resource.Id.spinner2);
var adapter1 = ArrayAdapter.CreateFromResource(
this, Resource.Array.building_array, Android.Resource.Layout.SimpleSpinnerItem);
var adapter2 = ArrayAdapter.CreateFromResource(
this, Resource.Array.level_array, Android.Resource.Layout.SimpleSpinnerItem);
adapter1.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
adapter2.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
spinner1.Adapter = adapter1;
spinner2.Adapter = adapter2;
spinner1.ItemClick += (sender, e) => {
// code here
};
字符串资源:
<resources>
<string-array name="building_array">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
</string-array>
<string-array name="level_array">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
</string-array>
</resources>
【问题讨论】: