Preferences of varying height within a PreferenceActivity

前端 未结 2 1161
夕颜
夕颜 2021-01-18 04:04

I have a custom class that extends Preference that I\'m using in conjunction with a PreferenceActivity.

When I try to adjust the height in the layout my Preference i

相关标签:
2条回答
  • 2021-01-18 04:23

    You can override getView(View, ViewGroup) in your Preference. Then send new LayoutParams to the getView(). I tried it with a customized CheckBoxPreference. Works great.

    import android.content.Context;
    import android.preference.CheckBoxPreference;
    import android.util.AttributeSet;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.AbsListView.LayoutParams;
    
    
    public class CustomCheckBoxPreference extends CheckBoxPreference {
    
    public CustomCheckBoxPreference(final Context context, final AttributeSet attrs,
            final int defStyle) {
        super(context, attrs, defStyle);
    }
    
    public CustomCheckBoxPreference(final Context context, final AttributeSet attrs) {
        super(context, attrs);
    }
    
    public CustomCheckBoxPreference(final Context context) {
        super(context);
    }
    
    @Override
    public View getView(final View convertView, final ViewGroup parent) {
        final View v = super.getView(convertView, parent);
        final int height = android.view.ViewGroup.LayoutParams.MATCH_PARENT;
        final int width = 300;
        final LayoutParams params = new LayoutParams(height, width);
        v.setLayoutParams(params );
        return v;
    }
    

    }

    Just be careful to use the correct LayoutParams for the View or you might get a class cast exception.

    0 讨论(0)
  • 2021-01-18 04:38

    This should help:

    <!-- Application theme -->
    <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <!-- Min item height -->
        <item name="android:listPreferredItemHeight">10dp</item>
    </style>
    

    another styling attributes that can be overridden can be found here preference item layout

    Original answer https://stackoverflow.com/a/27027982/975886

    0 讨论(0)
提交回复
热议问题