public void renderContent(Content content, View view) { ImageView tbView = (ImageView) view.findViewById(R.id.icon); if(tbView != null){ tbView.setImageBitmap(R.drawable.icon); tbView.setVisibility(View.VISIBLE); tbView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { someMethod(v); } }); } TextView nameView = (TextView) view.findViewById(R.id.name); if(nameView != null){ nameView.setText(content.getPname()); } TextView timeView = (TextView) view.findViewById(R.id.time); if(timeView != null){ long now = System.currentTimeMillis(); timeView.setText(FormatUtility.relativeTime(now, content.getCreate())); timeView.setVisibility(View.VISIBLE); } TextView descView = (TextView) view.findViewById(R.id.desc); if(descView != null){ descView.setText(content.getDesc()); descView.setVisibility(View.VISIBLE); } }
public void renderContent(Content content, View view) { AQuery aq = new AQuery(view); aq.id(R.id.icon).image(R.drawable.icon).visible().clicked(this, "someMethod"); aq.id(R.id.name).text(content.getPname()); aq.id(R.id.time).text(FormatUtility.relativeTime(System.currentTimeMillis(), content.getCreate())).visible(); aq.id(R.id.desc).text(content.getDesc()).visible(); }
public class ActivityMain extends Activity { private AQuery aq; private Activity activity; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); activity = this; aq = new AQuery(activity); AQUtility.setDebug(true); } }
public class ActivityMain extends Activity { private AQuery aq; private Activity activity; private RecyclerView gridView; private StaggeredGridLayoutManager mLayoutManager; private AdapterMain adapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); activity = this; aq = new AQuery(activity); AQUtility.setDebug(true); gridView = new RecyclerView(activity); gridView.setHasFixedSize(true); mLayoutManager = new StaggeredGridLayoutManager(1,StaggeredGridLayoutManager.VERTICAL); gridView.setLayoutManager(mLayoutManager); gridView.setItemAnimator(new DefaultItemAnimator()); getWindow().setContentView(gridView); adapter = new AdapterMain(activity,new String[]{"123","456"}); gridView.setAdapter(adapter); } }
/** * Created by recoilme on 23/01/15. */ public class AdapterMain extends RecyclerView.Adapter<AdapterMain.ViewHolder> { private String[] data; private AQuery aq; private Activity activity; public AdapterMain(Activity activity,String[] data) { this.activity = activity; this.data = data; aq = new AQuery(activity); } public static class ViewHolder extends RecyclerView.ViewHolder { public TextView mTextView; public ViewHolder(View v) { super(v); mTextView = (TextView) v.findViewById(R.id.articleTitle); } } @Override public AdapterMain.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View v = LayoutInflater.from(parent.getContext()) .inflate(R.layout.card, parent, false); ViewHolder vh = new ViewHolder(v); return vh; } @Override public void onBindViewHolder(ViewHolder viewHolder, int i) { aq.id(viewHolder.mTextView).text(data[i]); } @Override public int getItemCount() { return data.length; } }
<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/card_view" android:layout_gravity="center" android:layout_width="match_parent" android:layout_height="wrap_content" card_view:contentPadding="8dp" card_view:cardBackgroundColor="@color/primary_bgr" card_view:cardUseCompatPadding="true" card_view:cardCornerRadius="4dp"> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/articleLayout" android:background="@color/primary_bgr" android:layout_width="match_parent" android:layout_height="wrap_content"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:id="@+id/stgvImageView" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/stgvImageView" android:layout_alignRight="@+id/stgvImageView" android:gravity="center" android:layout_alignBottom="@+id/stgvImageView" android:layout_alignTop="@+id/stgvImageView" android:textColor="@color/white" android:textSize="20dp" android:id="@+id/siteurl" android:visibility="gone"/> <View android:layout_width="match_parent" android:layout_height="68dp" android:background="@drawable/main_adapter_tagbgr" android:layout_alignRight="@+id/stgvImageView" android:layout_alignTop="@+id/stgvImageView" android:layout_alignLeft="@+id/stgvImageView" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/stgvImageView" android:id="@+id/footer" android:orientation="vertical" android:paddingTop="16dp" android:paddingBottom="16dp" android:paddingLeft="6dp" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/articleTitle" android:textAppearance="@android:style/TextAppearance.Medium" android:textColor="@drawable/main_adapter_textselector" android:textStyle="bold" android:layout_marginBottom="16dp" android:paddingRight="8dp" android:paddingLeft="0dp"/> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <LinearLayout android:id="@+id/authorLayout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:layout_alignParentStart="false" android:clickable="true" android:paddingTop="10dp" android:paddingBottom="10dp" android:baselineAligned="false" android:paddingRight="4dp" android:paddingLeft="0dp"> <ImageView android:id="@+id/userAva" android:layout_width="20dp" android:layout_height="20dp" android:layout_gravity="center_vertical" android:background="#f8f8f8" /> <TextView android:id="@+id/userFullname" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:textColor="@color/gray_text" android:paddingLeft="8dp" android:ellipsize="end" android:maxWidth="160dp" android:singleLine="true" android:textAppearance="@android:style/TextAppearance.Small"/> </LinearLayout> </RelativeLayout> </LinearLayout> </RelativeLayout> </android.support.v7.widget.CardView>
public void request(String url) { aq.ajax(url, XmlDom.class,this,"onRequest"); } public void onRequest(String url,XmlDom xml, AjaxStatus status) { if (status.getCode()==200) { String logo = ""; try { logo = xml.tags("url").get(0).text(); } catch (Exception e) { e.printStackTrace(); } List<XmlDom> xmlItems = xml.tags("item"); for(XmlDom xmlItem: xmlItems){ ClassItem item = new ClassItem(); String description = xmlItem.tag("description").text(); item.setLogo(logo); item.setAuthor(xmlItem.tag("author").text()); item.setTitle(xmlItem.tag("title").text()); item.setDescription(description); item.setLink(xmlItem.tag("link").text()); String pubDate = xmlItem.tag("pubDate").text(); Date date = new Date(); try { date = formatter.parse(pubDate); } catch (Exception e) { AQUtility.debug("errorParsingDate",e.toString()); } item.setDate(date); String src = ""; try { src = new XmlDom("<xml>"+description+"</xml>").tag("img").attr("src"); if (src.startsWith("//") ) { src = "http:"+src; } } catch (Exception e) { e.printStackTrace(); } item.setImg(src); items.add(item); } adapter.notifyDataSetChanged(); } }
public class AdapterMain extends RecyclerView.Adapter<AdapterMain.ViewHolder> { private ArrayList<ClassItem> data; private AQuery aq; private Activity activity; private DateFormat formatter = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm", Locale.getDefault()); public AdapterMain(Activity activity,ArrayList<ClassItem> data) { this.activity = activity; this.data = data; aq = new AQuery(activity); } public static class ViewHolder extends RecyclerView.ViewHolder { private ImageView stgvImageView; private ImageView userAva; private TextView siteurl; private TextView userFullname; private TextView articleTitle; public ViewHolder(View holderView) { super(holderView); stgvImageView = (ImageView) holderView.findViewById(R.id.stgvImageView); siteurl = (TextView) holderView.findViewById(R.id.siteurl); userAva = (ImageView) holderView.findViewById(R.id.userAva); userFullname = (TextView) holderView.findViewById(R.id.userFullname); articleTitle = (TextView) holderView.findViewById(R.id.articleTitle); } } @Override public AdapterMain.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View v = LayoutInflater.from(parent.getContext()) .inflate(R.layout.card, parent, false); ViewHolder vh = new ViewHolder(v); return vh; } @Override public void onBindViewHolder(ViewHolder viewHolder, int i) { ClassItem item = data.get(i); aq.id(viewHolder.articleTitle).text(item.getTitle()); aq.id(viewHolder.siteurl).text(item.getLink()); aq.id(viewHolder.userAva).image(item.getLogo()); aq.id(viewHolder.userFullname).text(item.getAuthor() + " " + formatter.format(item.getDate())); if (TextUtils.equals(item.getImg(),"")) aq.id(viewHolder.stgvImageView).gone(); else { aq.id(viewHolder.stgvImageView).visible().image(item.getImg(), true, false, 640, 0, null, AQuery.FADE_IN, AQuery.RATIO_PRESERVE); } } @Override public int getItemCount() { return data.size(); } }
aq.id(viewHolder.stgvImageView).visible().image(item.getImg(), true, false, 640, 0, null, AQuery.FADE_IN, AQuery.RATIO_PRESERVE);
@Override public void onLowMemory(){ //clear all memory cached images when system is in low memory //note that you can configure the max image cache count, see CONFIGURATION BitmapAjaxCallback.clearCache(); } @Override public void onCreate() { //Config cache BitmapAjaxCallback.setDelayWrite(true); BitmapAjaxCallback.setPixelLimit(640*800); BitmapAjaxCallback.setMaxPixelLimit(4096000); }
BitmapAjaxCallback.clearCache();
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... swipeRefreshLayout = new SwipeRefreshLayout(activity); swipeRefreshLayout.setOnRefreshListener(this); swipeRefreshLayout.setColorScheme(android.R.color.holo_blue_bright, android.R.color.holo_green_light, android.R.color.holo_orange_light, android.R.color.holo_red_light); .... @Override public void onRefresh() { getFeeds(); }
private final String[] FEEDS = new String[]{"http://roem.ru/rss/","http://siliconrus.com/feed/","http://habrahabr.ru/rss/","http://megamozg.ru/rss/","http://geektimes.ru/rss/"};
Source: https://habr.com/ru/post/248647/
All Articles