相关疑难解决方法(0)

如何在Android中自定义Spinner

我想在a的下拉列表中添加一个自定义高度Spinner,比如30dp,我想隐藏下拉列表中的分隔符Spinner.

到目前为止,我尝试实现以下样式Spinner:

<style name="spinner_style">
        <item name="android:paddingLeft">0dp</item>
        <item name="android:dropDownWidth">533dp</item>
        <item name="android:showDividers">none</item>
        <item name="android:dividerHeight">0dp</item>
        <item name="android:popupBackground">@drawable/new_bg</item>
        <item name="android:dropDownHeight">70dp</item>
        <item name="android:scrollbarAlwaysDrawVerticalTrack">true</item>
        <item name="android:dropDownSelector">@android:color/white</item>
 </style>
Run Code Online (Sandbox Code Playgroud)

我的微调器的代码是:

<Spinner
            android:id="@+id/pioedittxt5"
            android:layout_width="543dp"
            android:layout_height="63dp"
            android:layout_toRightOf="@+id/piotxt5"
            android:background="@drawable/spinner"
            style="@style/spinner_style"
            android:dropDownVerticalOffset="-53dp"
            android:spinnerMode="dropdown"
            android:drawSelectorOnTop="true"
            android:entries="@array/travelreasons"
            android:prompt="@string/prompt" />
Run Code Online (Sandbox Code Playgroud)

但似乎没有任何效果.

android android-layout android-spinner

134
推荐指数
4
解决办法
36万
查看次数

如何以编程方式将字体自定义字体设置为Spinner文本?

我的资产文件夹中有一个ttf字体文件.我知道如何将它用于textviews:

Typeface externalFont=Typeface.createFromAsset(getAssets(), "fonts/HelveticaNeueLTCom-Lt.ttf");
textview1.setTypeface(externalFont);
Run Code Online (Sandbox Code Playgroud)

我已经定义了在我自己的xml文件中查找我的微调器文本(如在android中的usuall):

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+android:id/text1"
style="?android:attr/spinnerItemStyle"
android:singleLine="true"
android:textColor="#ffffff"
android:gravity="center" 
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee" />
Run Code Online (Sandbox Code Playgroud)

我只是无法从代码中引用此textview,我总是得到空指针异常.我尝试过:

TextView spinner_text=(TextView)findViewById(R.id.text1);
spinner_text.setTypeface(externalFont);
Run Code Online (Sandbox Code Playgroud)

即使我自己的xml中定义的微调器文本,是否可以选择我的外部字体?

谢谢.

编辑回答:

这有效:

String [] items = new String[2];
    items[0]="Something1";
    items[1]="Something2";

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                    R.layout.spinaca, items) {

         public View getView(int position, View convertView, ViewGroup parent) {
                 View v = super.getView(position, convertView, parent);

                 Typeface externalFont=Typeface.createFromAsset(getAssets(), "fonts/HelveticaNeueLTCom-Lt.ttf");
                 ((TextView) v).setTypeface(externalFont);

                 return v;
         }


         public View getDropDownView(int position,  View convertView,  ViewGroup parent) {
                  View v =super.getDropDownView(position, convertView, …
Run Code Online (Sandbox Code Playgroud)

fonts android spinner android-fonts android-spinner

89
推荐指数
3
解决办法
7万
查看次数

如何在Android 4.2中更改Action Bar选项菜单的背景颜色?

我想更改Android 4.2中选项(溢出)菜单的背景颜色.我已经尝试了所有方法,但它仍然显示主题设置的默认颜色.我使用了以下代码和XML配置.

MainActivity.java

public class MainActivity extends Activity {

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    getActionBar().setIcon(R.drawable.ic_launcher);     
    getActionBar().setTitle("Sample Menu");
    getActionBar().setBackgroundDrawable(new 
               ColorDrawable(Color.parseColor("#33B5E5"))); 

    int titleId = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");
    TextView titleText = (TextView)findViewById(titleId);
    titleText.setTextColor(Color.parseColor("#ffffff"));

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    setMenuBackground();
    return true;
}

protected void setMenuBackground(){                     
    // Log.d(TAG, "Enterting setMenuBackGround");  
    getLayoutInflater().setFactory( new Factory() { 

        @Override
        public View onCreateView(String name, Context context, …
Run Code Online (Sandbox Code Playgroud)

android android-menu android-theme android-actionbar android-4.2-jelly-bean

66
推荐指数
7
解决办法
16万
查看次数

如何在微调器中设置下拉箭头?

我尝试用下拉箭头设置微调器,但我无法修复它可以帮助我吗?我已附上源代码.我尝试使用以下链接但无法解决问题http://www.mokasocial.com/2011/03/easily-create-a-default-custom-styled-spinner-android/

我的班级文件:

    import android.os.Bundle;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Spinner;
    import android.widget.AdapterView.OnItemSelectedListener;
    import android.widget.Toast;

        public class topup extends Activity  {
            Spinner spinner,spin1,spin2,spin3;
                EditText ed,ed1;
                Button btn;
                List<String> list, list1,list2,list3;
                    private String[] countries_list={"01","02","03","04","05","06","07","08","09","10","11","12"};

                    protected void onCreate(Bundle savedInstanceState) {
                        super.onCreate(savedInstanceState);
                        setContentView(R.layout.topup);


                        spinner = (Spinner) findViewById(R.id.spinner1);
                        spin1= (Spinner) findViewById(R.id.spinner2);
                        spin2= (Spinner) findViewById(R.id.spinner3);
                        spin3= (Spinner) findViewById(R.id.spinner4);
                        ed = (EditText) findViewById(R.id.editText3);

                        list = new ArrayList<String>();
                        list.add("");
                        list.add("select");
                        list.add("01");
                        list.add("02");
                        list.add("03");
                        list.add("04");
                        list.add("05");
                        list.add("06");
                        list.add("07");
                        list.add("08");
                        list.add("09");
                        list.add("10");
                        list.add("11"); …
Run Code Online (Sandbox Code Playgroud)

android android-spinner

52
推荐指数
5
解决办法
13万
查看次数

在API 19及更低版本上更改RadioButton颜色?

所以我有一个应用程序,用户可以通过选择一组颜色来选择颜色RadioButtons,我已经使用ButtonTintXML属性为按钮着色,但显然这仅适用于API > 21/.

所以我的问题是,

如何更改RadioButtonsKitKat(API 19)及以下的颜色?

我已经从其他堆栈溢出问题中测试了一些方法,但到目前为止还没有一个有效.

xml android android-support-library android-studio android-support-design

3
推荐指数
1
解决办法
2908
查看次数

更改解析后出现的微调器项目的文本颜色

我是android的新手.所以需要一些帮助..我有一个带有白色背景的xml页面..在它有一个微调器......解析后的值在微调器中填充..但问题是当我点击在那个微调器上,文本颜色也是白色的,旋转器的背景也是白色的...因此文本不可见..我想要旋转器的所有项目都是黑色的..我有一些线程但是通过只有选定的项目显示黑色...需要你的hlp ... thnx提前..

android

2
推荐指数
1
解决办法
5680
查看次数