multiline support for checkbox preferences (see #358)

This commit is contained in:
Philipp Schaefer 2013-06-09 02:36:47 +02:00
parent 98f6f19731
commit 4fbb455175
2 changed files with 35 additions and 1 deletions

View File

@ -0,0 +1,34 @@
package com.cradle.iitc_mobile;
import android.content.Context;
import android.preference.CheckBoxPreference;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
// multiline checkbox preference
public class IITC_PluginPreference extends CheckBoxPreference {
public IITC_PluginPreference(Context context) {
super(context);
}
protected void onBindView( View view) {
super.onBindView(view);
makeMultiline(view);
}
protected void makeMultiline( View view) {
if ( view instanceof ViewGroup) {
ViewGroup grp=(ViewGroup)view;
for ( int index = 0; index < grp.getChildCount(); index++) {
makeMultiline(grp.getChildAt(index));
}
} else if (view instanceof TextView) {
TextView t = (TextView)view;
t.setSingleLine(false);
t.setEllipsize(null);
}
}
}

View File

@ -175,7 +175,7 @@ public class IITC_SettingsFragment extends PreferenceFragment {
} }
// now build a new checkable preference for the plugin // now build a new checkable preference for the plugin
CheckBoxPreference plugin_pref = new CheckBoxPreference(pref_screen.getContext()); IITC_PluginPreference plugin_pref = new IITC_PluginPreference(pref_screen.getContext());
plugin_pref.setKey(plugin_key); plugin_pref.setKey(plugin_key);
plugin_pref.setTitle(plugin_name); plugin_pref.setTitle(plugin_name);
plugin_pref.setSummary(plugin_desc); plugin_pref.setSummary(plugin_desc);