android - 使用上下文调用另一个类的方法

标签 android android-context

我有一个带有 ImageButton 的自定义标题栏,它会生成一个对话框,我希望能够在从对话框中选择列表项时在 map 上(在另一个类中)显示位置(放置 itemizedOverlay),以及标题栏和 map 处于相同的上下文中。我在某处读到我可以使用上下文调用另一个类的方法。我该怎么做?

public class MyTitleBar extends RelativeLayout{

private Context context;


public MyTitleBar(Context context, AttributeSet attrs) {
    super(context, attrs);
    this.context = context;
}

@Override
protected void onFinishInflate() {

    super.onFinishInflate();

    initViews();
}

// set up all the buttons  & clicks
private void initViews() {

    final ImageButton listImgBtn = (ImageButton) findViewById(R.id.more);
    final CharSequence [] listItems = {"Elderly","Events"};

    listImgBtn.setOnClickListener(new  View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if(context instanceof UserHome)
            {
                AlertDialog.Builder builder = new AlertDialog.Builder(context);
                builder.setTitle("List");
                builder.setItems(listItems, new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int item) {
                    // TODO Auto-generated method stub
                    if(item == 0)
                    {
                        //show location of elderly
                       //DisplayLocation()

                    }
                    else if(item == 1)
                    {
                        //show location of events
                    }
                }
            });
            AlertDialog alert = builder.create();
            alert.show();
          }
        }
    });

最佳答案

看起来我可以这样做:

UserHome userhome = (UserHome)context;
userhome.DisplayLocation();

UserHome Activity 中的 DisplayLocation()。简单。

关于android - 使用上下文调用另一个类的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11635086/

相关文章:

Android:ContentResolver query() 中的列数 (*) 无效

Android 谷歌地图版本 2 显示空白页面?

java - 如何使用Retrofit2 POST数据?

java - Android Studio说静态字段将泄漏上下文

java - 在服务接收器中使用什么来实例化对象的正确上下文是什么?

android - Button btn = new Button(this); "this"在这种情况下有什么用......?

java - Java中通过子目录进行文件名过滤

android - 如何获取 4.3 android 操作系统的系统日志

android - 如何在范围内自动连接 BLE 设备?

java - 在没有 Activity 的另一个类文件中使用 Toast 扩展了 Android