hamidreza.kh

لود کردن فایل وکتور در imageview

2 ارسال در این موضوع قرار دارد

سلام دوستان خسته نباشید 

یک ریسایکلر ویو دارم ک خب توش چندتا آیتم هستش و توی این آیتما یه imageView دارم ! 

این imageView رو میخوام اطلاعات یعنی عکسش رو از سرور بگیرم و در گرفتنش هم مشکلی ندارم 

فقط مشکلی که هست اینه که این عکسایی که از سرور میگیرم هم ممکنه png باشند و هم svg ! 

با کتابخونه picasso لود میکنم و فایل های png یا jpg رو باز میکنه ولی فایل svg یا همون وکتور رو باز نمیکنه! 

راهکاری برای حل این مشکل دارید؟!

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

پیکاسو نمی تواند فایل های svg و gif را نمایش دهد باید کتابخانه دیگه ای را بررسی کنید برای اینکار

1 کاربر پسند دیده است

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط alireza123
      سلام
      می خواستم دو تا عکس در صفحه است کنم که اولی به عنوان قاب باشه و دومی عکس داخل قاب. عکس قاب استفاده با فتوشاب طراحی شده که عکس داخل اون میتونه قرار بگیره
      بعد از سعی و تلاش اینطور تنظیم کردم که عکس قاب رو خاصیت src بهش بدم و عکس داخل قاب رو به عنوان بک گراند (با خاصیت background) .
      منتها مشکل من اینه که بتونم عکس داخل قاب رو جابه جا کنم . اگر برعکس این قضیه میفتاد به نتیجه دلخواه می رسیدم.
      تو اینترنت هم سرچ کردم و راه های که برای جابجا کردن عکس گفتند همه src رو تغییر میاد؟
      چی کار باید بکنم؟
      اگه از دو تا ایمیج ویو هم استفاده بشه روی هم میفته و قسمت خالی رو پر نمیکنه.
       
       
    • توسط alireza123
      سلام
      من یه برنامه نوشتم که کاربر تا 10تا عکس رو از گالری یا دوربین انتخاب می کنه.
      منتها تو گوشی lg  انتخاب عکس مشکل نداره و لی تو گوشی هواوی بعد از انتخاب 7 عکس خطا میده از صفحه خارج میشه  مشکل چیه؟
      هر دو اندروید 5.0.1
    • توسط hamidreza.kh
      سلام خسته نباشید 
      میخوام ی ریسایکلر ویو بسازم که مثل این عکس آیکون هرکدومش متفاوتش باشه یعنی هر چندتاییش متفاوت باشن با هم چیکار کنم؟

      و دوم اینکه میخوام یه صفحه پاپ آپ بسازم مثل این عکس...برای این کار چیکار کنم؟!
       
      http://uupload.ir/files/yup_popup_page.jpg
    • توسط soroush_habibi
      سلام به همه من یه دیتابیس با یه ریسایکلر ویو ساختم ولی هرچی میکنم اطلاعات دیتابیس در ریسایکلرویو نمایش داده نمیشه.کدکلاسdatabasehelper
       
      : public class DatabaseHelpher extends SQLiteOpenHelper{ Context context; private static final String DATABASE_NAME="Mohasebat"; private static final int DATABASE_VERSION = 1; private static final String main_table = "mainpage"; private static final String table1 = "CREATE TABLE "+main_table+"(A1 TEXT NOT NULL,AM TEXT NOT NULL,A2 TEXT NOT NULL,javab TEXT NOT NULL )"; public DatabaseHelpher(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); this.context = context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(table1); } @Override public void onUpgrade(SQLiteDatabase db, int i, int i1) { db.execSQL("DROP TABLE IF EXISTS " + main_table); onCreate(db); } public void insertIntoDB(String A1,String AM,String A2,String javab){ SQLiteDatabase db = this.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("A1", A1); values.put("AM", AM); values.put("A2", A2); values.put("javab", javab); db.insert(main_table, null, values); db.close(); } public data getDataFromDB(){ String query = "select * from "+main_table; data model = null; SQLiteDatabase db = this.getWritableDatabase(); Cursor cursor = db.rawQuery(query,null); if (cursor.moveToFirst()){ do { String A1 = cursor.getString(0); String AM = cursor.getString(1); String A2 = cursor.getString(2); String javab = cursor.getString(3); model = new data(A1,AM,A2,javab); }while (cursor.moveToNext()); } return model; } } اینم کد ریسایکلرویو: public class Recycler_View_Adapter extends RecyclerView.Adapter<Recycler_View_Adapter.adapter>{ private ArrayList<data> data1; public Recycler_View_Adapter(ArrayList<data> data) { this.data1 = data; } @Override public adapter onCreateViewHolder(ViewGroup parent, int viewType) { View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.item , parent , false); adapter ad = new adapter(v); return ad; } @Override public void onBindViewHolder(adapter holder, int position) { holder.adad1.setText(data1.get(position).getadad1()); holder.adad2.setText(data1.get(position).getAdad2()); holder.am.setText(data1.get(position).getAm()); holder.javab.setText(data1.get(position).getJavab()); } @Override public int getItemCount() { return data1.size(); } public class adapter extends RecyclerView.ViewHolder { public TextView adad1; public TextView adad2; public TextView am; public TextView javab; public adapter(final View itemView) { super(itemView); adad1 = (TextView)itemView.findViewById(R.id.adad1); adad2 = (TextView)itemView.findViewById(R.id.adad2); am = (TextView)itemView.findViewById(R.id.am); javab = (TextView)itemView.findViewById(R.id.javab); adad1.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { data1.remove(getLayoutPosition()); notifyItemRemoved(getAdapterPosition()); return false; } }); adad2.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { data1.remove(getLayoutPosition()); notifyItemRemoved(getAdapterPosition()); return false; } }); am.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { data1.remove(getLayoutPosition()); notifyItemRemoved(getAdapterPosition()); return false; } }); javab.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { data1.remove(getLayoutPosition()); notifyItemRemoved(getAdapterPosition()); return false; } }); itemView.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { data1.remove(getLayoutPosition()); notifyItemRemoved(getAdapterPosition()); return false; } }); } } public void add(data d){ data1.add(d); notifyItemInserted(this.data1.size() -1); } }
      اینم کلاس data:
      public class data { public String adad1; public String am; public String adad2; public String javab; public String getadad1() { return adad1; } public void setadad1(String adad1) { this.adad1 = adad1; } public String getAdad2() { return adad2; } public void setAdad2(String adad2) { this.adad2 = adad2; } public String getAm() { return am; } public void setAm(String am) { this.am = am; } public String getJavab() { return javab; } public void setJavab(String javab) { this.javab = javab; } public data(String adad1,String am,String adad2,String javab) { this.adad1 = adad1; this.adad2 = adad2; this.am = am; this.javab = javab; } }
      اینم قسمتی از کد اکتیویتی:
      private RecyclerView rc; ArrayList<data> data1; rc = (RecyclerView) findViewById(R.id.rc); data1 = new ArrayList<>(); final Recycler_View_Adapter mAdapter = new Recycler_View_Adapter(data1); rc.setAdapter(mAdapter); rc.setLayoutManager(new LinearLayoutManager(this)); RecyclerView.ItemAnimator itemAnimator = new DefaultItemAnimator(); itemAnimator.setAddDuration(500); itemAnimator.setRemoveDuration(500); rc.setItemAnimator(itemAnimator); DatabaseHelpher helpher = new DatabaseHelpher(mainpage.this); helpher.insertIntoDB(String.valueOf(number1),"^",String.valueOf(number2),"=" + String.valueOf(rsl)); data data2 = helpher.getDataFromDB(); mAdapter.add(data2);  
    • توسط scientific
      با سلام
      من توی برنامم چندتا تب دارم که وقتی بین اونها جابه جا میشم آیتم های ریسایکلرویو
      تعدادشون دوبرابر میشه (از یه جایی به بعد توی لیست تکرار میشن) همچنین اگر چندبار اسکرول کنم لیست رو این اتفاق میفته...
      من یکی از فرگمنت ها رو میزارم ممنون میشم راهنمایی بفرمایید.
      کلاس Fragment
      package com.narsis.countriesandcontinents; import android.content.DialogInterface; import android.content.Intent; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.graphics.Color; import android.graphics.Typeface; import android.net.Uri; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.support.v7.app.AlertDialog; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.text.Editable; import android.text.TextWatcher; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import com.afollestad.materialdialogs.DialogAction; import com.afollestad.materialdialogs.MaterialDialog; import com.github.javiersantos.materialstyleddialogs.MaterialStyledDialog; import com.narsis.countriesandcontinents.mainPage.AdapterCardView; import com.narsis.countriesandcontinents.mainPage.MainActivity; import com.narsis.countriesandcontinents.mainPage.ViewHolder; import java.io.IOException; import java.lang.reflect.Type; import java.sql.SQLException; import java.util.ArrayList; import static com.narsis.countriesandcontinents.mainPage.MainActivity.context; /** * A simple {@link Fragment} subclass. */ public class Asia_Fragment extends Fragment { RecyclerView recyclerView; public static final String ARG_PAGE = "ARG_PAGE"; private int mPage; Cursor cursor; public ArrayList<Structure> arrayList = new ArrayList<Structure>(); public AdapterCardView adapterCardView ; EditText txt_search; String newText; String s; public Asia_Fragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { ViewGroup viewGroup=(ViewGroup)inflater.inflate(R.layout.fragment_asia_,container,false);//set:recyclerView recyclerView= (RecyclerView) viewGroup.findViewById(R.id.my_recyclerview); TextView country_data = (TextView) viewGroup.findViewById(R.id.country_data); Typeface tp = Typeface.createFromAsset(getActivity().getAssets(), "fonts/Mj_Text Bold.ttf"); adapterCardView = new AdapterCardView(getActivity(),arrayList); loadDatabase(); return viewGroup; } public void loadDatabase() { final Database database = new Database(getContext()); database.CreateDatabase(); database.openDatabase(); Cursor cursor=database.QueryData("SELECT * FROM Country WHERE Ghareh='آسیا'"); if (cursor != null) { if (cursor.moveToFirst()) { do { Structure structure = new Structure(); structure.setCountry_Name(cursor.getString(1)); structure.setCapital(cursor.getString(2)); structure.setGhareh(cursor.getString(3)); structure.setFlag(cursor.getString(4)); structure.setMeanCountry(cursor.getString(5)); arrayList.add(structure); } while (cursor.moveToNext()); recyclerView.addOnItemTouchListener( new RecyclerItemClickListener(getActivity(), recyclerView, new RecyclerItemClickListener.OnItemClickListener() { @Override public void onItemClick(View view, int position) { Alert alert = new Alert(getActivity()); for(int i=0;i<=position;i++) { alert.country_data.setText(arrayList.get(position).getCountry_Name()); alert.capital_data.setText(arrayList.get(position).getCapital()); alert.ghareh_data.setText(arrayList.get(position).getGhareh()); alert.meancountrydata.setText(arrayList.get(position).getMeanCountry()); int id=getContext().getResources().getIdentifier(arrayList.get(position).getFlag(),"mipmap",getContext().getPackageName()); alert.imgDialog.setImageResource(id); alert.show(); } } @Override public void onLongItemClick(View view, int position) { } })); } } LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext()); // adapterCardView=new AdapterCardView(getActivity(),arrayList); recyclerView.setHasFixedSize(true); recyclerView.setLayoutManager(linearLayoutManager); recyclerView.setAdapter(adapterCardView); database.close(); } }  

  • دوره آموزشی اندروید ایران کانادا آموزش ویدئویی اندروید آموزش برنامه نویسی اندروید اندروید کاپ دوره آنلاین اندروید کتاب های آموزشی اندروید بسته آموزشی اندروید دوره برنامه نویسی اندروید آموزش Kotlin
  • فایل