آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

تغییر فونت برای ListView

تیرداد  10 سال پیش  10 سال پیش
+1 0

ضمن عرض سلام و خسته نباشد

چند وقت پیش یکی از بچه ها لطف کرد آموزشی قرار داد برای استفاده از فونت ها برای استفاده در اپلیکیشن

واسه textviwe یا bottom و بقیه چیزا میشه استفادش کرد ، ولی واسه ListView نمیشه

کسی بلده چطور میشه ListView رو با فونتی که میخوایم درست کنیم ؟

0 0
اگر خودتون adapter برای لیست ویوتون درست کردید که میتونید اونجا به تکست ویو دسترسی پیدا کنید و فونتشو تغییر بدید اگرم خودتون adapter ننوشتید از دوستان دیگه راهشو بپرسید من فعلا نمیدونم (10 سال پیش)
0 0
خودم آداپتر نوشتم ، ولی تو آداپتر از getAssets() خطا میگیره ، انگاری نمیشناستش (10 سال پیش)
0 0
آره یه راهکاری داره ولی فعلا اگه فقط میخای فونت عوض کنی ، فونتو توی کلاس G تعریف کن و توی آداپترت بهش دسترسی پیدا کن (10 سال پیش)
0 0
برات این پایین کدشو نوشتم .. جاهایی رو که باس کد بزنی رو نوشتم . ( =====> اینو اضافه کن )) این نشونشه ... فونت مورد نظرتو توو پوشه ی asset بزار و بین " " اضافه کن مثال : "aram.TTF" موفق باشی (10 سال پیش)
0 0
ممنونم از همتون بچه ها (10 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
ba2ever  10 سال پیش
+7 0

 public class AdapterFilm extends ArrayAdapter<StructFilm> {

    public static HashMap<ImageView, String> imageMap       = new HashMap<ImageView, String>();
    public static ContextWrapper             contextWrapper = new ContextWrapper(G.context); =====> اینو اضافه کن
    public static AssetManager               asset;=====> اینو اضافه کن
    public static Typeface                   typeface;=====> اینو اضافه کن


    public AdapterFilm(ArrayList<StructFilm> array) {
        super(G.context, R.layout.adapter_film, array);
    }


    private static class ViewHolder {

        public ViewGroup      layoutRoot;

       
        private static String item;

         

        public ViewHolder(View view) {
            layoutRoot = (ViewGroup) view.findViewById(R.id.layoutRoot);

            imgLogo = (ImageView) view.findViewById(R.id.imgLogo);
            txtName = (TextView) view.findViewById(R.id.txtName);
            txt_time = (TextView) view.findViewById(R.id.txt_time);

            //////////////////////////////////////
            asset = contextWrapper.getAssets();  =====> اینو اضافه کن
            typeface = Typeface.createFromAsset(asset, "aram.TTF");=====> اینو اضافه کن
            txtName.setTypeface(typeface);=====> اینو اضافه کن
            //////////////////////////////////////

            asset = contextWrapper.getAssets();
            typeface = Typeface.createFromAsset(asset, "aram.TTF");
            txt_time.setTypeface(typeface);
        }


        public void fill(final ArrayAdapter<StructFilm> adapter, final StructFilm item, final int position) {
            txtName.setText(item.name);
            txt_time.setText(item.time);

            String filename = HelperString.getFileName(item.logoUrl);
            final File imageFile = new File(G.DIR_FINAL + "/" + filename);
            if ( !imageFile.exists()) {
                imgLogo.setImageBitmap(null);
                DownloadManager.addToDownloadList(item.logoUrl, imgLogo);
            }

            BitmapFactory.Options options = new BitmapFactory.Options();
            //options.inSampleSize = 8;
            Bitmap bitmap = BitmapFactory.decodeFile(imageFile.getAbsolutePath(), options);
            imgLogo.setImageBitmap(bitmap);

            layoutRoot.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View arg0) {
                    G.selectedFilm = item;

                    Intent intent = new Intent(G.currentActivity, ActivityFilmDetail.class);
                    intent.putExtra("item", item.id + "");
                    G.currentActivity.startActivity(intent);
                }
            });

        }

    }


    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder;

        StructFilm item = getItem(position);
        if (convertView == null) {
            convertView = G.inflater.inflate(R.layout.adapter_film, parent, false);
            holder = new ViewHolder(convertView);
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }

        holder.fill(this, item, position);
        return convertView;
    }
}

 


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .