Привет в приведенном ниже значении кода: я добавляю значения в account_name, после чего с помощью этого адаптера выполняется установка адаптера. Сервер отправляет ответы, но значения не добавляются в список, и список также отображается.
Для отображения использовался возвратник для отображения значений.
Может кто-нибудь мне помочь, где сделал ошибку
Ошибка:
java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup, boolean)' on a null object reference
at com.genworks.oppm.Adapter.MyAdapter.onCreateViewHolder(MyAdapter.java:32)
at com.genworks.oppm.Adapter.MyAdapter.onCreateViewHolder(MyAdapter.java:19)
Обновлен код:
Активность. java:
for(SyncBlocks syncBlocks1:syncBlocks){
String label=syncBlocks1.getLabel();
ArrayList<SynFields> synFields=syncBlocks1.getFields();
ArrayList<SynFields> jsonArray=syncBlocks1.getFields();
for(SynFields synFields1:synFields){
String name=synFields1.getName();
Object values = synFields1.getValue().toString();
try {
if (values instanceof JSONObject) {
JSONObject jsonObject1 = new
JSONObject(String.valueOf(synFields1.getValue()));
String value=jsonObject1.getString("value");
}else if (values instanceof String) {
//here, you get string
String value = synFields1.getValue().toString();
//account_name.addAll(value);
String value_names= String.valueOf(synFields1.getValue());
// Log.e("account_name", String.valueOf(account_name.add(value)));
account_name.add(value_names);
//account_name.add(value);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
myAdapter = new MyAdapter(getContext(),account_name);
recyclerView.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.VERTICAL, false));
recyclerView.setAdapter(myAdapter);
}
MyAdapter. java:
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder> {
private LayoutInflater inflater;
private Context mContext;
private ArrayList<String> mSynFields=new ArrayList<>();
public MyAdapter(Context context, ArrayList<String> synFieldsArrayList) {
mContext=context;
mSynFields=synFieldsArrayList;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = inflater.inflate(R.layout.fragment_account, parent, false);
MyViewHolder holder = new MyViewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
holder.name.setText(mSynFields.get(position));
}
@Override
public int getItemCount() {
return mSynFields.size();
}
class MyViewHolder extends RecyclerView.ViewHolder{
TextView country, name, city;
ImageView iv;
public MyViewHolder(View itemView) {
super(itemView);
country = (TextView) itemView.findViewById(R.id.headingText);
name = (TextView) itemView.findViewById(R.id.subHeaderText);
city = (TextView) itemView.findViewById(R.id.subHeadingText);
}
}
}