gpt4 book ai didi

android - 在首选项中创建 NumberPicker 对话框

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:03:55 27 4
gpt4 key购买 nike

我正在尝试在我的首选项屏幕中创建一个 NumberPicker 对话框。我已经做了一个:https://stackoverflow.com/a/5533295/2442638

但是,对于我的第二个对话框,我只需要一个微调器,因此我将代码调整如下:

import android.content.Context;
import android.content.SharedPreferences;
import android.content.res.TypedArray;
import android.preference.DialogPreference;
import android.util.AttributeSet;
import android.view.View;
import android.widget.NumberPicker;

public class SnoozeTPP extends DialogPreference {

private int Minute = 0;
private NumberPicker np= null;

public static int getMinute(String time) {
String[] pieces = time.split(":");

return (Integer.parseInt(pieces[1]));
}

public SnoozeTPP(Context context, AttributeSet attrs) {
super(context, attrs);

setPositiveButtonText("Set");
setNegativeButtonText("Cancel");
}

@Override
protected View onCreateDialogView() {
np = new NumberPicker(getContext());

return (np);
}

@Override
protected void onBindDialogView(View v) {
super.onBindDialogView(v);

np.setMaxValue(60);
np.setValue(Minute);
}

@Override
protected void onDialogClosed(boolean positiveResult) {
super.onDialogClosed(positiveResult);

if (positiveResult) {

Minute = np.getValue();

String time = 0 + ":" + String.valueOf(Minute);

if (callChangeListener(time)) {
persistString(time);
}
}
}

@Override
protected Object onGetDefaultValue(TypedArray a, int index) {
return (a.getString(index));
}

@Override
protected void onSetInitialValue(boolean restoreValue, Object defaultValue) {
String time = null;

if (restoreValue) {
if (defaultValue == null) {
time = getPersistedString("08:00");
} else {
time = getPersistedString(defaultValue.toString());
}
} else {
time = defaultValue.toString();
}

Minute = getMinute(time);
}

}

没有错误,对话框正确弹出,但它的布局似乎“一团糟”:-)。蓝线横跨整个对话框,而不仅仅是数字的宽度。 enter image description here

问题是 - 如何正确设置布局? (我相信还有很多其他错误!)

谢谢

最佳答案

关于android - 在首选项中创建 NumberPicker 对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17515062/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com