我想减少微调器的下拉视图的宽度.我的下拉视图是CheckedTextView.我将宽度设置为CheckedTextView300dp,但没有帮助.无论如何它完全展示了.
PS.我也想发布图片,但我没有足够的声誉
我正在尝试从添加Fragment到我的活动中获取Spinner视图,但似乎我无法获得片段和视图.
我有增加了一个活动Fragment到它的LinearLayout,片断的布局是基于来自活动的意图"额外".一切都正确显示,我可以看到片段的所有视图但由于某种原因,当我调用findFragmentByTag(String tag)它时返回null,因此我不能调用getView().
以下是我如何将片段代码添加到我的活动中:
...onCreate(){
...
FragmentManager fm = getFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
Fragment fr = new Fragment(){
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(layoutID, container, false);
}
};
ft.add(R.id.formsListActivity_Container, fr, "form_fragment_tag");
ft.commit();
...
Run Code Online (Sandbox Code Playgroud)
}
然后我尝试获取这样的片段并获得一个微调器视图来添加字符串数组:
Fragment f = fm.findFragmentByTag("form_fragment_tag");
Spinner spinner = (Spinner) f.getView().findViewById(R.id.city_spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.city_list, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)
但是我得到一个null异常,因为findFragmentByTag()返回null
我究竟做错了什么?我已经验证了几次代码并且标签是相同的.我还确保spinner的id正确地位于XML布局文件中,并且片段正在加载正确的XML布局,因为我可以看到它(如果注释是从片段部分获取视图).
我是android的新手.我设置了微调器SetOnItemSelected Listener.有没有可能从另一个方法取消微调器OnItemSelectedListener.提前致谢.
这是我写的代码:
// create a view in dialog box
final View fileView = getLayoutInflater().inflate(R.layout.filename, null);
String[] array_spinner = new String[5];
array_spinner[0]="1";
array_spinner[1]="2";
array_spinner[2]="3";
array_spinner[3]="4";
array_spinner[4]="5";
Spinner s = (Spinner) findViewById(R.id.sp_CAT);
ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_spinner_item, array_spinner);
s.setAdapter(adapter);
s.setSelection(2);
//Spinner mCAT = (Spinner) findViewById(R.id.sp_CAT);
//ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
//fileView.getContext(), R.array.a_CAT, android.R.layout.simple_spinner_item);
//adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//mCAT.setAdapter(adapter);
EditText mSID = (EditText) fileView.findViewById(R.id.et_SID);
EditText mSCD = (EditText) fileView.findViewById(R.id.et_SCD);
EditText mNUM = (EditText) fileView.findViewById(R.id.et_NUM);
final String tSID=mSID.getText().toString();
final String tSCD=mSCD.getText().toString();
final String tNUM=mNUM.getText().toString();
// show dialog box …Run Code Online (Sandbox Code Playgroud) 我正在开发一个应用程序,我需要根据以前的屏幕值动态设置微调器值.我的代码......
Main.java.
String[] values = {"All","Only Walk-in","Only Phone","Only Web","Walkin-phone","Walkin-web","phone-web"};
/*ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item,apttypes);
spinner.setAdapter(adapter);*/
Run Code Online (Sandbox Code Playgroud)
但在这里我想要的是从前一个屏幕我得到一些价值(像旋转器位置).基于我需要设置微调器值来显示...
如果我得到值= 0意味着,从前一个屏幕意味着,
我需要设置微调器值以从顶部的数值数组中显示"全部".
如果我得到值= 5的意思,
我想设置微调器值显示为"Walkin-web"
我怎样才能做到这一点.谁能帮我这个...
我将数据加载到其后有一个微调器.风格不如我所料.
微调器代码
<Spinner
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/spinnerGender"
android:spinnerMode="dropdown"
android:layout_marginLeft="-5dp"
android:layout_marginTop="5dp"/>
Run Code Online (Sandbox Code Playgroud)
如何更改微调器的主题/样式
[您可以在这里完美地看到问题,下拉列表从微调器的顶部打开,而不是从底部打开,我也不知道该怎么办,在Google上也找不到任何解决方案,请帮助我]外部图片链接,由于某种原因,它不会在此处加载图片。
这是我的微调代码:
<Spinner
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/rgGender"
android:entries="@array/months_array"
android:textAlignment="center"
android:id="@+id/spMonth"
style="@style/Base.Widget.AppCompat.Spinner.Underlined"/>
Run Code Online (Sandbox Code Playgroud)