2017-01-22 10 views
8

私はスピナーを作成していたので、私はアンドロイドアプリには初めてです。ドロップダウンの始めと終わりにスピナーのリストをドロップダウンするために余分なスペース/パディングを垂直に気付きました。Androidスピナー削除ドロップダウン垂直余分なスペース/パディング

MainActivity.java:

public class MainActivity extends AppCompatActivity 
{ 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Spinner sr = (Spinner) findViewById(R.id.spinner); 
     String[] days = getResources().getStringArray(R.array.days); 
     ArrayAdapter<String> ar = new ArrayAdapter<>(this, R.layout.single_row, days); 
     sr.setAdapter(ar); 
    } 
} 

activity_main.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/activity_main" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#666666" 
    tools:context="com.xxxxx.defaultspinner.MainActivity"> 

    <Spinner 
     android:id="@+id/spinner" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_marginTop="20dp" 
     android:spinnerMode="dialog" 
     android:background="#898989"> 

    </Spinner> 

</RelativeLayout> 

single_row.xml

<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/app_name" 
    android:textColor="#FFFFFF" 
    android:textSize="26sp" 
    android:background="#214161"> 

</TextView> 

enter image description here

enter image description here

余分なスペース/パディングのソースを特定できるように、すべてのビューの背景を別の色に設定しました。しかし余分なスペース/パディングは白い背景を持ち、見ることのできないものがあります。

spinnerMode = "dialog"オプションのためではありません。この現象は、spinnerMode = "dropdown"の場合にも発生します。どうすればこのスペースを削除できますか?または私は何か間違っている?あなたのTextView

android:includeFontPadding="false" 

にこれを追加すること

+0

私も同じ問題 – Rohit

答えて

0

試して、それはあなただけのアダプターでgetDropDownViewメソッドをオーバーライドする必要が

+0

にはありません余分なスペース/パディングを直面しています余分なスペース/パディングの背景は#FFFFFFであるとしてのTextViewの背景色は、ここで、#214161であるため、TextViewのからではありません。私はあなたの答えをまだ同じ結果をテストしました – HeiseN

0

TextView余分な上下のパディングを削除します。

@Override 
public View getDropDownView(int position, View convertView, ViewGroup parent) { 
    parent.setPadding(0, 0, 0, 0); 
    return convertView; 
} 
関連する問題