我有两个Spinners。其中一个是在运行时填充的。
<Spinner ...
android:entries="@array/my_items_here" />
另一个使用String数组在XML布局中预先填充。
dropdown
两个Spinners都很好。但是,在显示其项目时,子项布局在dialog
和android.R.layout.simple_spinner_item
模式下都不匹配。
我必须遗漏一些非常简单的东西,但如何设置它们使用相同的布局(希望df.groupby(level=0).agg(lambda x: len(x.unique()))
val1 val2
index1
A 2 1
),而不创建我自己的自定义布局,或者在运行时加载XML String数组-time?
这似乎是一件基本的事情,但我找不到答案,而且我已经搜索了很多。
请参阅下面的屏幕截图:
*请原谅在第二张图片中使用希腊字符。我已检查并确认该问题与使用希腊字符无关。
答案 0 :(得分:3)
试试 ng-html-compile
要知道它的工作原理,只需检查ng-bind-html
的代码,然后的默认代码为((ArrayAdapter)preFilledSpinner.getAdapter()).setDropDownViewResource(android.R.layout.simple_spinner_item);
,以确定传递条目时的工作原理。 < / p>
AppCompatSpinner
当我们通过XML传递条目时,他们会创建一个AppCompatSpinner
并应用代码final CharSequence[] entries = a.getTextArray(R.styleable.Spinner_android_entries);
if (entries != null) {
final ArrayAdapter<CharSequence> adapter = new ArrayAdapter<>(context,android.R.layout.simple_spinner_item, entries);
adapter.setDropDownViewResource(R.layout.support_simple_spinner_dropdown_item);
setAdapter(adapter);
}
,您可以看到{默认设置ArrayAdapter
,这应该适用于参数,但不幸的是他们已经修好了
答案 1 :(得分:1)
我是如何在最近的项目中完成的。 Java代码:
public void spinner_settings() {
Spinner spinner = (Spinner) findViewById(R.id.spinner);
adapter =
ArrayAdapter.createFromResource(this, R.array.activity_list, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
switch(position){
case 0:
// TO-DO something when item selected
break;
case 1:
// TO-DO something when item selected
break;
case 2:
// TO-DO something when item selected
break;
}
}
@Override
public void onNothingSelected(AdapterView<?> parentView) {
// your code here
}
});
}
<强>水库&GT;值 - &gt;的strings.xml 强>
<resources>
<string-array name="activity_list">
<item>MainFrame</item>
<item>Settings</item>
<item>Translation Rules</item>
</string-array>
</resources>
<强>水库&GT;值 - &gt; styles.xml 强>
<resources>
<!-- For the resting Spinner style -->
<item name="android:spinnerItemStyle">
@style/spinnerItemStyle
</item>
<!-- For each individual Spinner list item once clicked on -->
<item name="android:spinnerDropDownItemStyle">
@style/spinnerDropDownItemStyle
</item>
</style>
<style name="spinnerItemStyle">
<item name="android:textSize">23sp</item>
<item name="android:textColor">#000000</item>
<item name="android:background">#008080</item>
</style>
<style name="spinnerDropDownItemStyle">
<item name="android:padding">5sp</item>
<item name="android:textSize">25sp</item>
<item name="android:textColor">#000000</item>
</style>
</resources>
我希望它会对你有所帮助!