Android:在 OnSeekBarChangeListener 中显示 Toast?

标签 android seekbar

我想在用户移动搜索栏时显示它的值,类似于联系人 ListView 在滚动时显示您所在部分的字母的方式(Android 2.3.x)。

有人对如何实现有建议吗?我正在考虑在 OnSeekBarChangeListener 的 onProgressChanged() 方法中使用 Toast,但无法获取上下文以 show() Toast。

编辑:此外,Seekbar 位于 ListView 的一行中,因此 OnSeekBarChangeListener 位于扩展 ArrayAdapter 的类中,而不是通常的“Activity”中,因此该方法无法使用 getBaseContext() 之类的内容。

最佳答案

你可以使用:

Toast.makeText(Main.this, "Message", Toast.LENGTH_LONG).show();

Toast.makeText(getBaseContext(), "Message", Toast.LENGTH_LONG).show();

第一种方法:全局使用Application

public class MyApp extends Application {
    private static MyApp instance;

    public static MyApp getInstance() {
        return instance;
    }

    public static Context getContext(){
        return instance.getApplicationContext();
    }

    @Override
    public void onCreate() {
        super.onCreate();
        instance = this;
    }
}

第二种方式:Context 传递给类构造函数或类中的方法

关于Android:在 OnSeekBarChangeListener 中显示 Toast?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10019480/

相关文章:

Android SeekBar 自动更改大小并偏移 "thumb",因此没有任何内容正确排列

带有 SeekBar 的 Android - 防止 'thumb' 在触摸 SeekBar 以拖动/滚动屏幕时移动

android - 在 Android 中实现一个 slider (SeekBar)

java - 如何将 Google 的 PlaceAutoCompleteFragment 实现到扩展 Fragment 的类中

android - 为什么Android和IOS11无法通过NFC通信

Android - 如何在图库中保存照片

带有流式音频的 Android 搜索栏

android - 如何以编程方式设置 Android SeekBar 进度可绘制

android - 使用 Crashlytics 捕获异常而不崩溃?

android - 如何确保我的 Android 6 Cordova 应用在尝试访问文件系统之前提示用户授予权限?