Моих запросов приложения некоторых JSON данные API моего сайта внутри onCreateView()
метода моего фрагмента:Неправильного цвета быть назначен макетом
apiService.getJson(5, new Callback<PostData>() {
@Override
public void success(PostData postData, Response response) {
final PostAdapter adapter = new PostAdapter(getActivity(), postArray);
postArray.addAll(postData.getData());
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
@Override
public void failure(RetrofitError retrofitError) {
retrofitError.printStackTrace();
}
});
getView()
метод моего адаптера выглядит следующим образом:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = convertView;
Post post = getItem(position);
if (view == null) {
view = LayoutInflater.from(context).inflate(R.layout.post_layout, parent, false);
} else {
return view;
}
LayerDrawable shapeLayout = (LayerDrawable) ContextCompat.getDrawable(context, R.drawable.post_bg);
GradientDrawable shape = (GradientDrawable) shapeLayout.findDrawableByLayerId(R.id.post_bg_border);
shape.setColor(Color.parseColor("#" + post.getColor()));
return view;
}
Компоновка :
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/post_bg_border">
<shape android:shape="rectangle">
<solid android:color="#000000" />
</shape>
</item>
<item android:left="5dp">
<shape android:shape="rectangle">
<solid android:color="@color/bg" />
</shape>
</item>
</layer-list>
Однако он присваивает цвет nex t, а не текущей. Что случилось с моим кодом?
Забыл удалить, что из некоторых предыдущих испытаний, но теперь цвет не меняется вообще. Он просто остается черным (цвет, который я установил по умолчанию). :/ – user
Исправление, оно устанавливает первый цвет, используемый на каждом посту. – user