我有一个专业的微调器(下拉列表),其中我有专业列表.我想显示默认值为"选择职业".在我的xml我输入android:prompt ="选择职业"但没有任何显示.我希望"Select Profession"能够在我标记为红色的地方展示
Spinner.XML
<Spinner
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/sp_profession"
android:layout_weight="1"
style="@style/spinner"
android:prompt="Select Profession"
android:spinnerMode="dropdown"
android:layout_margin="2dp"></Spinner>
Run Code Online (Sandbox Code Playgroud)
我确实做过这样的事情但是我在prompt_text上得到了null值
profession_array = getResources ().getStringArray (R.array.Profession);
profession_str = new ArrayAdapter<String> (c, R.layout.textview_spinner, profession_array);
prompt_text.setText ("Select Profession");
profession_str.setDropDownViewResource (android.R.layout.simple_dropdown_item_1line);
Run Code Online (Sandbox Code Playgroud)
R.layout.textview_spinner
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:id="@+id/prompt_text"
android:layout_height="wrap_content"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingTop="10dp"
android:minHeight="1dp"
android:gravity="center"
android:textSize="20sp"
android:textColor="@android:color/white" />
Run Code Online (Sandbox Code Playgroud) 我有一个Android表单,需要根据某些选择更新自己.该表格目前由2个Spinners(A和B)组成.在完成Spinner A的选择之前,不会创建微调器B. 选择完成后,B将显示在视图中,并根据A的选择动态填充内容.这是我的代码:
public class MyForm extends Activity
{
private final int SEL_ACTIVATE = 0;
private final int SEL_DEACTIVATE = 1;
private static final String[] actionList = {"Activate", "Deactivate" };
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
table = (TableLayout) findViewById(R.id.table);
showListA(table);
}
public void showListA(View v)
{
rowAction = new TableRow(this);
Spinner spinner = new Spinner(this);
spinner.setPrompt("Select...");
spinner.setOnItemSelectedListener(
new OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> parent, View v, int position, long id)
{
switch (position)
{
case SEL_ACTIVATE:
case …Run Code Online (Sandbox Code Playgroud) 我有一个包含三个项目的微调器,我使用XML字符串数组资源来提供它.当您打开活动时,微调器通常会显示数组列表中的第一个项目.我想更改它并在选择项目之前在微调器中显示"选择一个"文本.
我怎样才能做到这一点?
我想设置微调器以显示名称country,即使选择了任何其他列表.我使用了一个textview来显示Spinner List的选定项目.当我使用setselection方法将微调器标题设置为Country时,EditText最终也会更改.我经历了各种有关此问题的主题,但未找到合适的答案
我在下面附上我的代码
MainActivity.java
package com.example.spinner;
import android.os.Bundle;
import android.app.Activity;
import android.database.Cursor;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
public class MainActivity extends Activity {
Spinner sp;
TextView t;
String[] country;
int sp_position;
String selected;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String myString = "Country";
sp = (Spinner)findViewById(R.id.spinner1);
t = (TextView)findViewById(R.id.textView1);
country = getResources().getStringArray(R.array.spinner);
ArrayAdapter<String> ad = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_dropdown_item,country);
sp_position = ad.getPosition(myString);
sp.setAdapter(ad);
ad.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void …Run Code Online (Sandbox Code Playgroud) 我需要将默认值文本"选择你的设备"值设置为我的微调器下拉列表,我把它作为列表项,所以它作为一个下拉列表项,我隐藏下拉列表,因为这我的下拉列表中有一个空白区域.
我该怎么做?
这是我用过的代码
mToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);
setSupportActionBar(mToolbar);
getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setDisplayShowTitleEnabled(false);
/*Setup a Spinner*/
mToolbarSpinner = (Spinner) findViewById(R.id.spinner_toolbar);
/*Manage the spinner*/
mToolbarSpinnerNavigationItems = new ArrayList<SpinnerNavItem>();
mToolbarSpinnerNavigationItems.add(new SpinnerNavItem("Select your Seebo", R.drawable.deviceonline));
/*setting the mToolbarSpinnerNavigationItems to list_item_title_navigation.xml*/
mArrayAdapter = new ArrayAdapter(this, R.layout.list_item_title_navigation,mToolbarSpinnerNavigationItems){
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// remember to inflate custom layout for spinner item
// then set anything you want here
// remember to use convertView.findViewById(), not just findViewById()
// this is an example …Run Code Online (Sandbox Code Playgroud) 我的代码 Spinner如下:
String[] countryNames = {"Select Country", "India", "China", "Australia", "Portugle", "America", "New Zealand"};
Spinner spinner = (Spinner) findViewById(R.id.simpleSpinner);
hintAdapter = new CustomArrayAdapter(getApplicationContext(), R.layout.simple_row,countriesList,getApplicationContext());
spinner.setAdapter(hintAdapter);
Run Code Online (Sandbox Code Playgroud)
我想实现搜索 Spinner.
我怎样才能做到这一点?
我有一个问题,我设计了一个微调器,并在其上添加项目(即状态).现在我想在主屏幕上只显示一次"SELECT STATES".当我们点击该微调器时,它将隐藏该文本("SELECT STATES")并应显示状态列表.
提前致谢.
我在我的应用程序中实现了一个微调器.我正在显示学校列表,但我想要一个默认值/提示,以便用户知道选择一所学校.我也希望这样做而不必将提示作为列表项.有任何想法吗?
到目前为止,这是我的微调器代码:
selectSchoolSpinner = (Spinner) findViewById(R.id.select_school_spinner);
spinnerSchoolList = new ArrayList<String>();
spinnerSchoolList.add("Please select School");
//I don't want to have a prompt like the latter
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, spinnerSchoolList);
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
selectSchoolSpinner.setAdapter(spinnerAdapter);
Run Code Online (Sandbox Code Playgroud) 我使用JSON从数据库中获取值并将它们插入到微调器中.此过程成功运行.但是当我点击旋转器时,我收到了两次Spinner提示; 如何从微调器中删除第一个默认值...
这是快照: - 希望你理解我的问题:
这是我的代码: -
private class GetCategories extends AsyncTask<Void, Void, Void> {
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected Void doInBackground(Void... arg0) {
ServiceHandler jsonParser = new ServiceHandler();
String json = jsonParser.makeServiceCall(URL_CATEGORIES,
ServiceHandler.GET);
if (json != null) {
try {
JSONObject jsonObj = new JSONObject(json);
if (jsonObj != null) {
JSONArray categories = jsonObj
.getJSONArray("categories");
categoriesList.clear();
for (int i = 0; i < categories.length(); i++) {
JSONObject catObj = (JSONObject) categories.get(i);
Category cat = new Category( …Run Code Online (Sandbox Code Playgroud) 我正在使用adapter.add在我的微调器中添加标题,但如何在android微调器下拉列表中隐藏第一项?这是我的代码:
var spinner1 = FindViewById<Spinner>(Resource.Id.spinner1);
var adapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleSpinnerItem);
spinner1.Adapter = adapter;
adapter.Add("Select one...");
adapter.Add("Name");
adapter.Add("Mobile");
adapter.Add("Age");
Run Code Online (Sandbox Code Playgroud)
见下图: