-1
이 경우 ListItem에 문자열을 추가하려고 할 때이 문제가 발생합니다.이 작업을 수행하려면이 tutorial을 따르십시오. 나는 비디오가 말한 것과 똑같은 일을했지만 여전히 'ListItem에서 java.lang.String에 적용 할 수 없습니다.'오류가 발생하며 이유를 이해하지 못합니다. 여기에 내 코드입니다 :In ListItem을 java.lang.String에 적용 할 수 없습니다. android
public class ListScientistsFragment extends Fragment {
private final String TAG = "ListScientistsFragment";
private static final String URL_DATA = "http://jsonplaceholder.typicode.com/photos";
private String[] scientistNames = {"Marie Curie","Thomas Edison","Albert Einstein","Michael Faraday","Galileo Galilei",
"Stephen Hawking","Johannes Kepler","Issac Newton","Nikola Tesla"};
private String[] birthYear = {"1867","1847","1879","1791","1564","1942","1571","1643","1856"};
private String[] deathYear = {"1934","1931","1955","1867","1642","Present","1630","1727","1943"};
private int[] image = {R.drawable.curie,R.drawable.edison,R.drawable.einstein,R.drawable.faraday,R.drawable.galileo,R.drawable.hawking,R.drawable.kepler,R.drawable.newton,R.drawable.tesla};
private ArrayList<Scientist> mScientists;
private RecyclerView mScientistRecyclerView;
private List<LauncherActivity.ListItem> listItems;
private ScientistAdapter mAdapter;
public ImageView mImageView;
@Override
public void onCreate(Bundle savedInstanceState) {
mScientists = new ArrayList<>();
listItems = new ArrayList<>();
for(int i =0;i<scientistNames.length;i++){
Scientist s = new Scientist();
s.setName(scientistNames[i]);
s.setBirthYear(birthYear[i]);
s.setDeathYear(deathYear[i]);
mScientists.add(s);
}
loadImagesToView();
super.onCreate(savedInstanceState);
}
private void loadImagesToView() {
final ArrayList<String> list = new ArrayList<String>();
StringRequest stringRequest = new StringRequest(Request.Method.GET,
URL_DATA,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONArray jsonarray = new JSONArray(response);
for(int i=0;i<jsonarray.length();i++) {
JSONObject o = jsonarray.getJSONObject(i);
//HERE'S MY PROBLEM ------------------------------------
LauncherActivity.ListItem item;
item = new LauncherActivity.ListItem(
o.getString("url")
);
//--------------------------------------------
listItems.add(item);
}
} catch (Exception e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}
);
난 그냥 다른 분야와 JSON 인 특정 URL_DATA에서지고있어 각 "URL"를 추가하고 싶지만, 내가 특별히 URL입니다 필요합니다. 이것을 RecyclerView에로드 할 것입니다. 당신이 이해하기를 바랍니다.
난 그냥 문제를 파악, 당신은 어쨌든, 감사합니다. –