我想在我的Android应用程序中使用搜索栏。我的minsdk版本必须是23。
编译器说,搜索栏的setMin需要至少api级别26。
我是否需要一些特殊的支持库来实现简单的搜索栏setmin?
我在Linux上使用Android studio 3.0.1。我的build.gradle是这样的:
a = [1, 2, 3]
b = [4, 5, 6]
c = []
for x, y in zip(a, b):
c.append(x + y)
我的布局代码段:
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.zamek.boyler"
minSdkVersion 23
targetSdkVersion 23
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
...
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
my Activity code snippets:
<SeekBar
android:id="@+id/sb_hysteresis"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="15dp"/>
THX,
ZAMEK
答案 0 :(得分:4)
SeekBar
setMin()
方法。
如果您想限制SeekBar
最小值,则必须手动实施。
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
int min = 5;
if(progress < min) {
seekBar.setProgress(min);
}
}
答案 1 :(得分:1)
我同意Zeeshan's response,但我的做法有些不同,也许会帮助尝试实现这一目标的人。
首先定义您的最小值和最大值。
private static int MAX_VALUE = 220;
private static int MIN_VALUE = 50;
然后按如下所示设置搜索栏最大值。这样,您将使搜寻栏仅包含您要定义的间隔的值。
seekbar.setMax(MAX_VALUE - MIN_VALUE);
此后,每当您检查搜索栏的值时,都必须首先添加我们定义的最小值。
@Override
public void onProgressChanged(SeekBar seekBar, int value, boolean fromUser) {
displayValue((value + MIN_VALUE) + "cm");
}