Migrate CellDataPreference to switchPreferenceCompatStyle

UI keep unchanged in this cl.

Bug: 306658427
Test: manual - on "Data usage" page
Change-Id: Ic8a7263fa220e9ce5ffb9f8a0d181f5c9ede9db7
This commit is contained in:
Chaohui Wang
2023-10-26 14:47:37 +08:00
parent 43306392ea
commit 17d3c1d8d7

View File

@@ -26,11 +26,10 @@ import android.telephony.TelephonyManager;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.util.Log; import android.util.Log;
import android.view.View; import android.view.View;
import android.widget.Checkable; import android.widget.CompoundButton;
import androidx.annotation.VisibleForTesting; import androidx.annotation.VisibleForTesting;
import androidx.appcompat.app.AlertDialog.Builder; import androidx.appcompat.app.AlertDialog.Builder;
import androidx.core.content.res.TypedArrayUtils;
import androidx.preference.PreferenceViewHolder; import androidx.preference.PreferenceViewHolder;
import com.android.settings.R; import com.android.settings.R;
@@ -51,12 +50,10 @@ public class CellDataPreference extends CustomDialogPreferenceCompat
public int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; public int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
public boolean mChecked; public boolean mChecked;
public boolean mMultiSimDialog; public boolean mMultiSimDialog;
private MobileDataEnabledListener mDataStateListener; private final MobileDataEnabledListener mDataStateListener;
public CellDataPreference(Context context, AttributeSet attrs) { public CellDataPreference(Context context, AttributeSet attrs) {
super(context, attrs, TypedArrayUtils.getAttr(context, super(context, attrs, androidx.preference.R.attr.switchPreferenceCompatStyle);
androidx.preference.R.attr.switchPreferenceStyle,
android.R.attr.switchPreferenceStyle));
mDataStateListener = new MobileDataEnabledListener(context, this); mDataStateListener = new MobileDataEnabledListener(context, this);
} }
@@ -170,9 +167,10 @@ public class CellDataPreference extends CustomDialogPreferenceCompat
@Override @Override
public void onBindViewHolder(PreferenceViewHolder holder) { public void onBindViewHolder(PreferenceViewHolder holder) {
super.onBindViewHolder(holder); super.onBindViewHolder(holder);
final View switchView = holder.findViewById(android.R.id.switch_widget); final CompoundButton switchView =
(CompoundButton) holder.findViewById(androidx.preference.R.id.switchWidget);
switchView.setClickable(false); switchView.setClickable(false);
((Checkable) switchView).setChecked(mChecked); switchView.setChecked(mChecked);
} }
@Override @Override