getIntent没有得到认可,我做错了什么?
我收到此错误:
PS:首先我得到了这个错误,找不到符号方法getIntent。错误:找不到符号变量getIntent
我的代码:
package com.example.r.app;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import java.util.List;
public class MyAdapter extends ArrayAdapter<String> {
int i=0;
public MyAdapter(Context context, int resource, List<String> objects) {
super(context, resource, objects);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView textView = (TextView) view.findViewById(android.R.id.text1);
Intent intent = getIntent;
int[] barva = intent.getIntArrayExtra("barva");
int[] bar = {1, 2, 3};
if (position == i) {
if (barva == bar){
textView.setTextColor(0xffcc80);
}
else if (barva == bar){
textView.setTextColor(0xa5d6a7);
}
else if (barva == bar){
textView.setTextColor(0x80deea);
}
}
return view;
}
}
答案 0 :(得分:3)
错误:找不到符号变量getIntent
首先,getIntent
是方法而不是变量,因此将其命名为:
Intent intent = getIntent();
其次,getIntent()
方法来自Activity
类而不是ArrayAdapter
类,因此此方法在扩展ArrayAdapter
的类中不可用。
从Activity中调用getIntent()
方法,其中创建MyAdapter
的对象并将intent作为参数传递给构造函数。
答案 1 :(得分:2)
getIntent是一种方法。在活动中尝试:
Intent intent = getIntent();
编辑:
我没有真正注意到你在适配器里面。如果您的上下文与活动相关,则必须略有不同:
Intent intent = ((Activity) context).getIntent();
答案 2 :(得分:0)
或者你可以在你的类声明中写:
public class nameofyourclass extends AppCompatActivity {