2017-07-19 3 views
-4

のプロパティのようなdrawableRightは私がのEditTextに android:drawableRightを使用していますいくつかのEditTextとスピナーを実装したいが、これはそう 、私は何ができるか、私はこのように使用スピナーのプロパティではありません。 丸いボックスにandroid:background="@drawable/rounded_edittext"を使用しました。 そして、android:entriesが性別の値として使用されます。描画可能なフォルダではスピナーのボーダーのためのbackground.xmlします:スピナー

このXMLコードは、私はあなたが背景色を変更し、このよう

ステップ1をやっようにアイコンをドロップダウンすることができます

<EditText 
    android:id="@+id/passsET" 
    android:layout_width="350dp" 
    android:layout_height="50dp" 
    android:layout_below="@+id/emailET" 
    android:layout_marginTop="10dp" 
    android:paddingLeft="10dp" 
    android:drawableRight="@drawable/passwords_icon" 
    android:hint="Password" 
    android:singleLine="true" 
    android:textColor="@color/colorPrimaryDark" 
    android:background="@drawable/rounded_edittext" 
    android:textSize="16dp" 
    android:layout_centerHorizontal="true" 
    android:inputType="textWebPassword"/> 
<Spinner 
android:id="@+id/spinGenders" 
android:layout_width="350dp" 
android:layout_height="40dp" 
android:layout_marginTop="10dp" 
style="@style/Base.Widget.AppCompat.Spinner.Underlined" 
android:entries="@array/Gender" 
android:textSize="15dp" 
android:gravity="center" 
android:background="@drawable/rounded_edittext" 
android:layout_below="@+id/spinProfilebys" 
android:textColorHint="@color/BLUE" 
android:layout_centerHorizontal="true"> 
</Spinner> 

答えて

3

を使用しました。

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
<solid android:color="@android:color/transparent" /> 
<corners android:radius="5dp" /> 
<stroke 
    android:width="1dp" 
    android:color="@color/darkGray" /> 
</shape> //edited 

ステップ2:スピナー使用のレイアウト設計のためのアイコンまたは任意の画像このドロップダウンuse this image like as

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginRight="3dp" 
    android:layout_weight=".28" 
    android:background="@drawable/spinner_border" 
    android:orientation="horizontal"> 

    <Spinner 
     android:id="@+id/spinner2" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_centerVertical="true" 
     android:layout_gravity="center" 
     android:background="@android:color/transparent" 
     android:gravity="center" 
     android:layout_marginLeft="5dp" 
     android:spinnerMode="dropdown" /> 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_centerVertical="true" 
     android:layout_gravity="center" 
     android:src="@mipmap/drop" /> 

</RelativeLayout> 

drop.pnjは最後に画像以下のように見える、それはすべての場所のラウンドエリア内のクリック可能と不要ですimageViewのListerをクリックして書きます。

詳細については、あなたはHere

enter image description here

+0

イメージビューを使用せずにスピナーにイメージを追加できません。 –

+0

これは**かなり奇妙です**: 'android:src =" @mipmap/drop "/>' mipmap'フォルダに**ランチャーアイコンのみが含まれていなければなりません** - それ以外は何もありません。それはうまくいくかもしれませんが、アドバイスはできません。このポストを参照してください:https://stackoverflow.com/a/28065664/2649012 –

0

あなたはスピナーに適用するよりも、この

<style name="SpinnerTheme" parent="android:Widget.Spinner"> 
    <item name="android:background">@drawable/spi_icon</item> 
</style> 

のようなスタイルを作成する見ることができます

<Spinner 
android:id="@+id/spinGenders" 
android:layout_width="350dp" 
android:layout_height="40dp" 
android:layout_marginTop="10dp" 
style="@style/SpinnerTheme" 
</Spinner> 

[1]まず、XMLファイルにスピナーを追加

[この画像では、すべてのスピナーの項目が中央に来るが、教育の項目が下の位置に来る] drawbleフォルダに

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item> 
     <layer-list> 
      <item> 
       <shape> 
        <gradient android:angle="90" android:endColor="#ffffff" android:startColor="#ffffff" android:type="linear" /> 
        <stroke android:width="0.33dp" android:color="#0fb1fa" /> 
        <corners android:radius="0dp" /> 
        <padding android:bottom="3dp" android:left="3dp" android:right="3dp" android:top="3dp" /> 
       </shape> 
      </item> 
      <item android:right="5dp"> 
       <bitmap android:gravity="center_vertical|right" android:src="@drawable/arrow_down_gray" /> 
      </item> 
     </layer-list> 
    </item> 
</selector> 
+0

それは動作しません私はこのコードを行ったが、結果は同じですが、1つのdrawableファイルと1つのスタイルファイルを使用しました。 –

+0

ありがとうございました –

+0

@VKSGODIYAL私はそれが他の人を助けることができるように私を受け入れてくださいolso –

0

をこのようなbackgoundを作成

<Spinner 
     android:background="@drawable/spinner_back" 
     android:id="@+id/fatherOccuption" 
     android:layout_width="350dp" 
     android:layout_height="50dp" 
     android:textSize="18dp" 
     android:layout_centerHorizontal="true" 
     style="@style/Base.Widget.AppCompat.Spinner.Underlined" 
     android:layout_marginTop="2dp" 
     android:layout_below="@+id/fatherOcc"/> 

は今、私は描画可能なファイルにこの次のコードを使用

<?xml version="1.0" encoding="utf-8"?> 
    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item> 
     <layer-list> 
      <item> 
      <shape> 
       <gradient android:angle="90" android:endColor="#ffffff" 
       android:startColor="#ffffff" android:type="linear" /> 
       <stroke android:width="0.33dp" android:color="#0fb1fa" /> 
       <corners android:radius="0dp" /> 
       <padding android:bottom="3dp" android:left="3dp" 
       android:right="3dp" android:top="3dp" /> 
      </shape> 
      </item> 
     <item android:right="5dp"> 
     <bitmap android:gravity="center_vertical|right" 
     android:src="@drawable/spinner_img" /> 
     </item> 
    </layer-list> 
    </item> 
</selector> 

これはスピナー項目に使用されるアダプターです

StringRequest stringIncome=new StringRequest(Request.Method.GET,OCC_URL, 
      new Response.Listener<String>() { 
       @Override 
       public void onResponse(String response) { 

        String[] arr = response.split(","); 
        ArrayAdapter<String> adapter = new ArrayAdapter<String> 
        (EditDetails5.this, android.R.layout.simple_list_item_1, 
        arr); 
        fatherOccuption.setAdapter(adapter); 
       } 
      }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 

    Toast.makeText(EditDetails5.this, error.toString(), 
Toast.LENGTH_LONG).show(); 
} 
}); 
AppController.getInstance().addToRequestQueue(stringIncome); 

[1]: https://i.stack.imgur.com/qzqgu.png 
+0

これはあなたの答えですか? –

+0

これは私が試したもので、リンク上に画像が追加されました –

+0

これがあなたの質問のためのものなら、質問セクションに追加してください。答えがOKの場合 –