当前位置: 首页 > 知识库问答 >
问题:

无法解析getcontext()

戎洛城
2023-03-14
package fragment;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.example.myapplication.R;
import com.example.myapplication.UserAdapter;
import com.example.myapplication.Users;
import com.google.firebase.database.FirebaseDatabase;
import java.util.ArrayList;
public class Chat_frg extends Fragment {
public Chat_frg(){

}
ArrayList<Users> list=new ArrayList<>();
FirebaseDatabase database;
RecyclerView recyclerView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    database=FirebaseDatabase.getInstance();
    recyclerView.findViewById(R.id.chatRecyclerView);
    UserAdapter adapter = new UserAdapter(list.getContext());
    recyclerView.setAdapter(adapter);
    LinearLayoutManager layoutManager = new LinearLayoutManager(getContext());
    return inflater.inflate(R.layout.fragment_chat_frg, container, false);
    }
}
package com.example.myapplication;

public class Users {
    String ProfilePic,Name,phoneNumber,Email,password,userId,lastMessage,status;

    public Users(){

    }

    public Users(String profilePic, String name, String phoneNumber, String email, String password, String userId, String lastMessage, String status) {
        ProfilePic = profilePic;
        Name = name;
        this.phoneNumber = phoneNumber;
        Email = email;
        this.password = password;
        this.userId = userId;
        this.lastMessage = lastMessage;
        this.status = status;
    }

    public Users(String name, String email, String password) {
        Name = name;
        Email = email;
        this.password = password;
    }

    public String getProfilePic() {
        return ProfilePic;
    }

    public void setProfilePic(String profilePic) {
        ProfilePic = profilePic;
    }

    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public String getEmail() {
        return Email;
    }

    public void setEmail(String email) {
        Email = email;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getLastMessage() {
        return lastMessage;
    }

    public void setLastMessage(String lastMessage) {
        this.lastMessage = lastMessage;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }
}

共有1个答案

柯轶
2023-03-14

老实说,我对这段代码很困惑:

ArrayList<Users> list=new ArrayList<>();
...
UserAdapter adapter = new UserAdapter(list.getContext());

list是ArrayList的一个实例,一般来说,它与上下文无关,但是仍然调用list.getcontext(),似乎是要将上下文传递给类UserAdapter。

如果希望在UserAdpater类中使用上下文,可以传递getactivity()getcontext(),当然,首先应该在UserAdapter中使用Context Context属性。

class UserAdapter{
    private Context context;
    UserAdapter(Context context) {
        this.context = context;
    }
}

UserAdapter adapter = new UserAdapter(getActivity() or getContext());
 类似资料:
  • 问题内容: 这是我在JSP文件中的Java代码。我正进入(状态 无法解析Base64Encoder。 为什么会这样呢?我必须添加与相关的内容。任何建议将不胜感激。 问题答案: 看起来您正在使用Web应用程序中包含的jar中不存在的类。您可以尝试以下吗?如有必要,请进行调整,我只是在查看通用文档,然后将其输入- 转到http://commons.apache.org/codec/index.html

  • 问题内容: 因此,我直接从Google的android网站复制了此教程示例内容,却收到一个错误,指出R.id无法解决。 这是我的Java文件 这是我的 问题答案: 您必须导入您的R类 同样,如需求发布一样,您必须为布局使用名称空间。

  • 问题内容: 之前一切正常。然后,我碰巧将一个新的xml文件添加到布局中。现在,当setContentView指向(R.layout.menu)时,我的一个类给出了错误。Eclipse告诉我R.layout.menu无法解析。我不知道为什么。我在布局文件夹中定义了一个称为菜单的布局。 有什么建议? 问题答案: 您是否执行过项目>清洁?有时,您只需要让Eclipse重新生成R文件即可。

  • 问题内容: 我是一个Java新手,因此遇到了这个问题。我尝试解码Json,为了做到这一点,我想导入这些包: “无法解决导入问题” …这些软件包是否不再可用,或者我是否需要做其他事情才能使它们起作用? 提前感谢。 问题答案: 可能您的简单json.jar文件不在您的类路径中。

  • 重命名应用程序包名称后,Android Studio显示此错误 我尝试过的事情: 清洁项目 清理Android Studio缓存 清除分级缓存 重新安装的IDE 文件->使缓存无效/重新启动 我使用了 截图