从非静态到静态

时间:2016-10-19 18:49:16

标签: android static non-static

尝试从一个片段到下一个活动发生一个意图,显然这个错误出现在goMakan();和goMakan1(); 。这对我来说是新鲜的,不知道如何解决它。如果这是一个重复的问题,我很抱歉。

    public static class ViewHolder extends RecyclerView.ViewHolder {
        public ImageView picture;
        public TextView name;
        public TextView description;

        public ViewHolder(LayoutInflater inflater, ViewGroup parent) {
            super(inflater.inflate(R.layout.custom_row, parent, false));

            picture = (ImageView) itemView.findViewById(R.id.card_image);
            name = (TextView) itemView.findViewById(R.id.card_title);
            description = (TextView) itemView.findViewById(R.id.card_text);

            final Button button[] = new Button[2];

            for (int h = 0; h < button.length; h++) {
                final int b = h;
                button[h].setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        button[0] = (Button) itemView.findViewById(R.id.action_button);
                        button[1] = (Button) itemView.findViewById(R.id.action_button);
                        if (button[b] == button[0]) {
                            goMakan();
                        } else if (button[b] == button[1]) {
                            goMakan1();
                        }
                    }
                });
            }

        }
    }



        public void goMakan() {
        Intent intent = new Intent(getActivity(), Malis.Activity);
        startActivity(intent);
    }
    public void goMakan1(){
        Intent intent = new Intent(getActivity(), AbangBurn.Activity);
        startActivity(intent);
    }

1 个答案:

答案 0 :(得分:0)

你不能从静态的东西中调用静态的东西。它们要么必须是静态的,要么不是。

上次我遇到这个问题时,我将静态方法复制为非静态方法,因此我可以从需要非静态的程序的另一部分中获取它。