从Android中的另一个类访问按钮 [英] Access a button from another class in android

查看:50
本文介绍了从Android中的另一个类访问按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道在SO中也有类似的问题,但很遗憾,这些问题都没有达到我的目的.

I know there are similar questions asked before in SO, but sorry to say that, none of them are serving my purpose.

我在一个活动类中有一个按钮,我想在另一个类中提供其功能.

I have a button in an activity class, and I want to give its functionality in another class.

以下是我的HomeActivity代码:

Below is my HomeActivity code:

//  Tile Button
    tileButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            TileButton tileView = new TileButton();
            tileView.tile();
        }
    });

这是TileButton.java类代码:

And here is TileButton.java class code:

public class TileButton {
HomeActivity homeActivity = new HomeActivity();
View view = homeActivity.hometabView;
public void tile(){
    if(view.isShown()){
        view.setVisibility(View.INVISIBLE);
    }else{
        view.setVisibility(View.VISIBLE);
    }
}
}

现在,当我按下平铺按钮时,将引发Null Pointer Exception.下面是LogCat条目.

Now when I press the tile button, a Null Pointer Exception is thrown. Below is the LogCat entry.

10-04 10:32:07.833: E/AndroidRuntime(5330): java.lang.NullPointerException

如何解决此问题?请帮助

How do I solve this problem? Please help

推荐答案

更改:

public class TileButton {

public void tile(View view){
    if(view.isShown()){
        view.setVisibility(View.INVISIBLE);
    }else{
        view.setVisibility(View.VISIBLE);
    }
}
}

//  Tile Button
    tileButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            TileButton tileView = new TileButton();
            tileView.tile(v);// you can pass any view from here
        }
    });

这篇关于从Android中的另一个类访问按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆