Zobrazování obrázků v zobrazení recycler podobné facebook časovou osu

hlasů
1

Jsem vytvoření aplikace pro Android, já jsem uvízl v jednom bodě. Chci zobrazit příspěvky, jak to bude zobrazen v Facebooku časové ose. Příspěvek může mít obrázky nebo nemusí. Vytvořil jsem názor karty pro ostatní poštovní prvků a jsem schopný zobrazovat v příspěvcích. Mám obrazových odkazy odeslané ze serveru na post obrázky, teď chci stahovat obrázky a zobrazovat na určité pracovní místo, které má obraz v něm. Jak to mohu udělat? Pokud se uživatel má k dispozici 10 míst, mohou existovat jako jeden nebo dva. Jak mohu zjistit, které poštovní má obraz a zobrazení obrazu v té poště po stažení. Může někdo prosím, pomozte mi v tomto.

Prosím, dejte mi vědět, pokud budete potřebovat další informace. Podle mého názoru je karta, jak je uvedeno níže:

<?xml version=1.0 encoding=utf-8?>
<RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android
    android:layout_width=match_parent
    android:layout_height=match_parent
    android:orientation=vertical>

<android.support.v7.widget.CardView
    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:cardCornerRadius=4dp>

    <RelativeLayout
        android:layout_width=wrap_content
        android:layout_height=wrap_content>

    <ImageView
        android:id=@+id/imageViewUser
        android:layout_width=wrap_content
        android:layout_height=wrap_content
        android:src=@mipmap/human_image/>

    <TextView
        android:id=@+id/textViewTitle
        android:layout_width=wrap_content
        android:layout_height=wrap_content
        android:layout_toRightOf=@+id/imageViewUser
        android:layout_toEndOf=@+id/imageViewUser
        android:textSize=18sp
        android:text=titleText
        android:layout_marginLeft=10dp
        android:layout_marginStart=10dp/>

        <TextView
            android:id=@+id/textViewNoOfDays
            android:layout_width=wrap_content
            android:layout_height=wrap_content
            android:layout_below=@+id/textViewTitle
            android:textSize=14sp
            android:layout_marginLeft=10dp
            android:text=No of Days
            android:layout_toRightOf=@+id/imageViewUser
            android:layout_alignBottom=@+id/imageViewUser/>

        <TextView
            android:id=@+id/textViewPostDescription
            android:layout_width=wrap_content
            android:layout_height=wrap_content
            android:layout_below=@+id/imageViewUser
            android:layout_marginTop=20dp
            android:text=ABCDE
            android:layout_marginLeft=20dp
            android:layout_marginStart=20dp/>

        <View
            android:layout_width=fill_parent
            android:layout_height=2dp
            android:background=#c0c0c0
            android:layout_below=@+id/postImage
            android:layout_marginTop=10dp/>

        <ImageButton
            android:id=@+id/imageButtonPin
            android:layout_width=wrap_content
            android:layout_height=wrap_content
            android:layout_alignParentRight=true
            android:src=@mipmap/ic_pin_grey600_18dp/>

        <ImageView
            android:id=@+id/postImage
            android:layout_width=wrap_content
            android:layout_height=wrap_content
            android:layout_below=@+id/textViewPostDescription
            />








    </RelativeLayout>






</android.support.v7.widget.CardView>




</RelativeLayout>
Položena 29/11/2015 v 09:58
zdroj uživatelem
V jiných jazycích...                            


2 odpovědí

hlasů
0

Myslím, že to je ten, který hledáte, facebook líbí cardview. To vyzkoušet, zda je obraz načíst ze serveru null. To je citlivé na velikost obrázků stejně.

Odpovězeno 21/06/2016 v 10:49
zdroj uživatelem

hlasů
0

To je, jak se mi podařilo získat tuto práci.

Adapter Class:

public class StoriesAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {

    private List<Success> successList;
    ImageLoader imageLoader = AppController.getInstance().getImageLoader();
    private Context mContext;

    public StoriesAdapter(Context context, List<Success> successList) {
        this.successList = successList;
        this.mContext = context;
    }
    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.success_list, parent, false);
        StoryItemViewHolder vh = new StoryItemViewHolder(v);

        return vh;
    }
    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int position) {
        if (imageLoader == null)
            imageLoader = AppController.getInstance().getImageLoader();
        final Success success = successList.get(position);
        StoryItemViewHolder holder = (StoryItemViewHolder) viewHolder;
        // Feed image
        if (!success.getThumbnailUrl().equals("null")) {//check if null
            holder.thumbNail.setImageUrl(success.getThumbnailUrl(), imageLoader);
            holder.thumbNail.setVisibility(View.VISIBLE);
            holder.thumbNail.setResponseObserver(new FeedImageView.ResponseObserver() {
                        @Override
                        public void onError() {
                        }

                        @Override
                        public void onSuccess() {
                        }
                    });
        } else {
            holder.thumbNail.setVisibility(View.GONE);
        }

    }
    @Override
    public int getItemCount() {
        return (null != successList ? successList.size() : 0);
    }

}

A viewHolder:

public class StoryItemViewHolder extends RecyclerView.ViewHolder {
    public FeedImageView thumbNail;

    public StoryItemViewHolder(View view) {
        super(view);
        this.thumbNail= (FeedImageView) view.findViewById(R.id.newsImage);
    }

}
Odpovězeno 21/06/2016 v 11:02
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more