如何获取对动作处理程序内的活动类的引用

发布于 2024-12-03 10:56:40 字数 476 浏览 3 评论 0原文

这是我的代码:

     seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){


   public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    // TODO Auto-generated method stub
    seekBarValue.setText(String.valueOf(progress));
    imageLoader.DisplayImage(imageArray[progress], <<NEED A REFERENCE TO THE ACTIVITY CLASS>>, movieFrame);
   }
    }

这里的问题是我无法获取对seekBar 所在活动类的引用。有人可以帮我吗?谢谢。

This is my code:

     seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){


   public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    // TODO Auto-generated method stub
    seekBarValue.setText(String.valueOf(progress));
    imageLoader.DisplayImage(imageArray[progress], <<NEED A REFERENCE TO THE ACTIVITY CLASS>>, movieFrame);
   }
    }

The problem here is i am unable to get a reference to the activity class the seekBar is inside. Can anyone kindly help me out ? Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

水中月 2024-12-10 10:56:40

如果我的问题正确的话,这应该可以做到。

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){


       public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
        // TODO Auto-generated method stub
        seekBarValue.setText(String.valueOf(progress));
        imageLoader.DisplayImage(imageArray[progress], <<NEED A REFERENCE TO THE ACTIVITY CLASS>>, movieFrame);

    Activity a = YourActivityname.this;
       }
        }

如果没有任何结果,则创建一个 Activity 类型的实例变量并在 Activity 的 onCreate 方法中初始化它,如下所示。

Class A extends Activity{

private Activity instance;
@Override
        protected void onCreate(Bundle savedInstanceState) {
super.onCreate(Bundle savedInstanceState);

instance = A.this;
}

}

this should do it, if i have got your question right..

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){


       public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
        // TODO Auto-generated method stub
        seekBarValue.setText(String.valueOf(progress));
        imageLoader.DisplayImage(imageArray[progress], <<NEED A REFERENCE TO THE ACTIVITY CLASS>>, movieFrame);

    Activity a = YourActivityname.this;
       }
        }

if nothing is working out, then create a instance variable of type Activity and initialise it in Activity's onCreate method, something like below.

Class A extends Activity{

private Activity instance;
@Override
        protected void onCreate(Bundle savedInstanceState) {
super.onCreate(Bundle savedInstanceState);

instance = A.this;
}

}
千寻… 2024-12-10 10:56:40

您可以简单地使用:

MyActivity.this

You can simply use:

MyActivity.this

写下不归期 2024-12-10 10:56:40

尝试这个而不是传递引用。

this.getParent()

try this instead of passing reference.

this.getParent()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文