gpt4 book ai didi

java - 如何在onProgressChanged之外获取seekBar的实时值?

转载 作者:行者123 更新时间:2023-12-01 18:42:51 29 4
gpt4 key购买 nike

[这里我用seekBar制作了一个数字表格应用程序,并希望在ListView中显示这些值]

所以我面临一些问题

问题1:如果我在onProgessChanged中创建“seekProg”,那么我无法在外部访问seekProg函数。

问题2:这里我无法在seekBarChangeListener中使用ArrayAdaptor [因为它显示错误]。

所以我想在seekBarChangeListener之外获取实时更改值。那么我怎样才能得到呢??

package com.andro.table;

import androidx.appcompat.app.AppCompatActivity;


import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.SeekBar;
import android.widget.TextView;

import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);



TextView textView=findViewById(R.id.textView);
SeekBar seekBar=findViewById(R.id.seekBar);
seekBar.setMax(20);

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {


}

@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});

int seekProg= seekBar.getProgress();
textView.setText(""+seekProg);


int tableValue= seekBar.getProgress();
ListView mylistView= findViewById(R.id.myListView);
ArrayList<String> table =new ArrayList<>();
for(int i=1;i<=20;i++) {

int a=tableValue*i;
table.add(tableValue+" * "+ i+ "="+a);
}

ArrayAdapter<String> arrayAdapter= new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line,table);
mylistView.setAdapter(arrayAdapter);


}
}

最佳答案

你只需使用 tableValue naa,我认为你可以做到这一点

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

       int tableValue=0;
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {

tableValue= progress;
}

您还可以在声明 TextView 的下方声明 tableValue。希望这会对您有所帮助,如果没有请评论。

关于java - 如何在onProgressChanged之外获取seekBar的实时值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59888090/

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