为qHD 800x480的和不同的布局或绘制或两者 [英] qHD and 800x480 different layout or drawable or both

查看:242
本文介绍了为qHD 800x480的和不同的布局或绘制或两者的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有了2列5行网格的应用程序。
每个小区是一个图像和文本
该应用程序运作良好的800×480。 (下图)

问题是,当我运行模拟器为960×540网格看起来就像这样(下图)

两者都采用可绘制,华电国际和布局,华电国际

有没有解决这个问题的方法甚至是非正统的?

在code网格是

 <?XML版本=1.0编码=UTF-8&GT?;
  <的RelativeLayout的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
      机器人:ID =@ + ID / IdMainCat
      机器人:layout_width =match_parent
      机器人:layout_height =FILL_PARENT><! - 对照片画面设计
  - >      <的TextView
          机器人:ID =@ + ID / TV
          机器人:layout_width =WRAP_CONTENT
          机器人:layout_height =WRAP_CONTENT
          机器人:layout_alignParentTop =真
          机器人:layout_centerHorizo​​ntal =真
          机器人:paddingTop =5DP
          机器人:文字=@字符串/ APP_NAME
          机器人:文字颜色=#FFFFFF
          机器人:TEXTSIZE =25sp/>      <的ImageButton
          机器人:ID =@ + ID /布朗族
          机器人:layout_width =WRAP_CONTENT
          机器人:layout_height =WRAP_CONTENT
          机器人:layout_alignParentRight =真
          机器人:SRC =@绘制/ GC
          机器人:layout_margin =2DP
          机器人:背景=@空
          机器人:文字=按钮/>      < GridView控件
          机器人:ID =@ + ID / gridView2
          机器人:layout_width =match_parent
          机器人:layout_height =match_parent
          机器人:layout_alignParentBottom =真
          机器人:layout_below =@ + ID / TV
          机器人:columnWidth时=270dp
          机器人:比重=中心
          机器人:为numColumns =2
          机器人:paddingTop =7DP
          机器人:stretchMode =columnWidth中>      < / GridView的>
  < / RelativeLayout的>

和code的图像是

 <?XML版本=1.0编码=UTF-8&GT?;
<的RelativeLayout的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
    机器人:layout_width =match_parent
    机器人:layout_height =match_parent
    机器人:背景=@绘制/ gridview_style
    机器人:layout_marginTop =10dp
    机器人:layout_margin =10dp>    < ImageView的
        机器人:ID =@ + ID / grid_item_image2
        机器人:layout_width =match_parent
        机器人:layout_height =match_parent
        机器人:layout_gravity =中心
        机器人:weightSum =0.6
        机器人:layout_weight =0.8
        机器人:scaleType =fitXY
        机器人:SRC =@绘制/ AC>    < / ImageView的>    <的TextView
        机器人:ID =@ + ID / grid_item_label2
        机器人:layout_width =FILL_PARENT
        机器人:layout_height =WRAP_CONTENT
        机器人:layout_alignParentRight =真
        机器人:layout_below =@ + ID / grid_item_image2
        机器人:背景=#aa000000
        机器人:比重=中心
        机器人:文字=@ + /标记
        机器人:文字颜色=#e0f901
        机器人:TEXTSIZE =14dp
        机器人:文字样式=大胆/>< / RelativeLayout的>


解决方案

我看的许多在code你贴异常:

FILL_PARENT 已自API 8级。结果去precated
现在,使用 match_parent 代替。

权重并不能有效的RelativeLayouts。结果
他们只在LinearLayouts和衍生物工作。

的android:TEXTSIZE 应始终 SP ,不是 DP

本:的android:文本=@ + /标记完全错误

TextViews,以及ImageViews,是的点击。结果
而ImageButtons,以及ImageViews,不显示任何文本。结果
你真的不需要的ImageButton。结果
因此,要优化(通过减少浏览次数),图像可以在一个TextView插入一个复合绘制。结果
只是分配给你onClickListener到TextView的,而不是到ImageButton的。

所以,我的布局的新版本( home_grid.xml )将是:

 <?XML版本=1.0编码=UTF-8&GT?;
< RelativeLayout的
    的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
    机器人:layout_width =match_parent
    机器人:layout_height =match_parent
    机器人:背景=@绘制/ app_back
    >
    <! - 对照片的画面设计 - >
    <的TextView
        机器人:ID =@ + ID / TV
        机器人:layout_width =WRAP_CONTENT
        机器人:layout_height =WRAP_CONTENT
        机器人:layout_alignParentTop =真
        机器人:填充=8DP
        机器人:drawablePadding =8DP
        机器人:drawableRight =@绘制/ GC
        机器人:文字=@字符串/ APP_NAME
        机器人:文字颜色=#FFFFFF
        机器人:TEXTSIZE =24sp
    />
    < GridView控件
        机器人:ID =@ + ID / gridView2
        机器人:layout_width =match_parent
        机器人:layout_height =match_parent
        机器人:layout_alignParentBottom =真
        机器人:layout_below =@ + ID / TV
        机器人:columnWidth时=270dp
        机器人:比重=中心
        机器人:为numColumns =2
        机器人:stretchMode =columnWidth时
        机器人:horizo​​ntalSpacing =8DP
        机器人:verticalSpacing =8DP
    />
< / RelativeLayout的>

以及优化(性能)的布局( home_mobile.xml )的图标是...

 <?XML版本=1.0编码=UTF-8&GT?;
<的TextView
    的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
    机器人:ID =@ + ID / grid_item2
    机器人:layout_width =match_parent
    机器人:layout_height =match_parent
    机器人:layout_margin =8DP
    机器人:背景=#A000
    机器人:drawablePadding =8DP
    机器人:drawableTop =@绘制/ AC
    机器人:比重=中心
    机器人:文字颜色=#fdf0
    机器人:TEXTSIZE =16SP
    机器人:文字样式=大胆
/>

您可以用Java设置图像( Home.java

 可绘制DRW = getResources()getDrawable(R.drawable.ac)。
// setCompoundDrawablesWithIntrinsicBounds(INT离开,诠释顶部,右INT,INT底部)
myText.setCompoundDrawablesWithIntrinsicBounds(NULL,DRW,NULL,NULL);

这一切都应该工作的外装即用。结果
刚修好你的Java code相匹配(用于设置复合图形内容的点击,...)结果
但它是一个真正的琐碎固定

这是您的固定 Home.java - 但仍然在 home_mobile 布局是固定的...
......为此,我需要您的 HomeAdapter.java 类了。

 包com.tg.sam;进口的java.util.ArrayList;
进口java.util.Locale中;进口com.tg.sam.HomeAdapter;
进口android.app.Activity;
进口android.app.ActivityGroup;
进口android.app.LocalActivityManager;
进口android.content.Context;
进口android.content.Intent;
进口android.content.Shared preferences;
进口android.content.res.Configuration;
进口android.graphics.Color;
进口android.graphics.Typeface;
进口android.graphics.drawable.ColorDrawable;
进口android.graphics.drawable.Drawable;
进口android.os.Bundle;
进口android.view.KeyEvent;
进口android.view.View;
进口android.view.View.OnClickListener;
进口android.view.Window;
进口android.widget.AdapterView;
进口android.widget.AdapterView.OnItemClickListener;
进口android.widget.Button;
进口android.widget.GridView;
进口android.widget.ImageButton;
进口android.widget.RelativeLayout;
进口android.widget.TextView;公共类家庭扩展活动实现OnItemClickListener
{
    公共静态共享preferences设置= NULL;
    公共静态共享preferences.Editor编辑= NULL;    公共静态最后弦乐preFS_NAME =TG_LANG;
    GridView控件的GridView = NULL;
    整数[]图像= {};
    的String []类别= {};
    // ** ** NO
    //郎的ImageButton;    //城市,住宿,餐饮,购物,娱乐,健康,pcare,PSERV,编辑,pH值;
    TGDatabase DB = NULL;
    意向majorlist = NULL;
    RelativeLayout的homelayout = NULL;
    捆绑包= NULL;
    TextView的电视= NULL;    //的String [] =类新的String [] {住宿,食品,海滩​​,
    //旅游,健康,位置,购物,房地产};
    / *
     *公共静态主页组;私人的ArrayList<视图>历史;
     * /    @覆盖
    保护无效的onPause()
    {
        super.onPause();
        // **这实在是太差了! **
        System.gc()的;
    }    @覆盖
    公共无效onConfigurationChanged(配置NEWCONFIG)
    {
        super.onConfigurationChanged(NEWCONFIG);
        / *
         * Toast.makeText(MajorList.thisonConfigurationChanged():+
         * newConfig.toString(),Toast.LENGTH_SHORT).show();
         * /
        //的onCreate(NULL);
        / *
        的setContentView(R.layout.home_grid);
        // homelayout =(RelativeLayout的)findViewById(R.id.IdMainCat);
        //homelayout.setBackgroundResource(R.drawable.app_back);
        * /
        // homelayout.setDrawingCacheEnabled(假);
        设置= getShared preferences(preFS_NAME,0);
        CButton的();
/ * DB =新TGDatabase(本​​);
        intialize();
        db.close();        字符串字体路径=aus.ttf;
        字体TF = Typeface.createFromAsset(getAssets(),字体路径);
        tv.setTypeface(TF);
        tv.setTextColor(Color.WHITE);        类别=新的String []
        {
            getResources()。的getString(R.string.Lcity)
            getResources()。的getString(R.string.Accommodation)
            getResources()。的getString(R.string.Food)
            getResources()。的getString(R.string.Shopping)
            getResources()。的getString(R.string.Fun)
            getResources()。的getString(R.string.Health)
            getResources()。的getString(R.string.Pcare)
            getResources()。的getString(R.string.Pserv)
            getResources()。的getString(R.string.Education)
            getResources()。的getString(R.string.Phn)
        };
        照片=新的整数[]
        {
            R.drawable.lc,R.drawable.ac,R.drawable.fd,
            R.drawable.sh,R.drawable.fn,R.drawable.hm,R.drawable.pc,
            R.drawable.ps,R.drawable.ed,R.drawable.pn
        };        GridView控件=(GridView控件)findViewById(R.id.gridView2);
        gridView.setAdapter(新HomeAdapter(这一点,类别,图片));
        gridView.setOnItemClickListener(本); * /
    }    私人无效CButton的(){
        串串=;
        可绘制DRW = NULL;
        如果(settings.getString(郎,恩)。equalsIgnoreCase(EN))
        {
            字符串=EN;
            // Language_check(这一点,恩);
            // ** ** NO
            //lang.setImageResource(R.drawable.gc);
            DRW = getResources()getDrawable(R.drawable.gc)。
        }
        其他
        {
            // Language_check(这一点,厄尔尼诺);
            字符串=厄尔尼诺;
            // ** ** NO
            //lang.setImageResource(R.drawable.uk);
            DRW = getResources()getDrawable(R.drawable.uk)。
        }
        tv.setCompoundDrawablesWithIntrinsicBounds(NULL,NULL,DRW,NULL);        区域设置locale2 =新的语言环境(字符串);
        Locale.setDefault(locale2);
        配置CONFIG2 =新配置();
        config2.locale = locale2;
        getBaseContext()。getResources()。updateConfiguration(CONFIG2,
            。getBaseContext()getResources()getDisplayMetrics());
        / *
        如果(getResources()。的getString(R.string.locale).equalsIgnoreCase(EN))
        {
            lang.setImageResource(R.drawable.gc);
        }
        其他
        {
            lang.setImageResource(R.drawable.uk);
        }
        * /
    }    @覆盖
    公共无效的onCreate(捆绑savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        //的setContentView(R.layout.home_layout);
        的setContentView(R.layout.home_grid);
        // ** NO - 你已经在布局文件中设置它(我的更新)**
        // homelayout =(RelativeLayout的)findViewById(R.id.IdMainCat);
        //homelayout.setBackgroundResource(R.drawable.app_back);
        // homelayout.setDrawingCacheEnabled(假);
        DB =新TGDatabase(本​​);
        intialize();
        db.close();        设置= getShared preferences(preFS_NAME,0);
        lbutton();        字符串字体路径=aus.ttf;
        字体TF = Typeface.createFromAsset(getAssets(),字体路径);
        tv.setTypeface(TF);
        tv.setTextColor(Color.WHITE);        类别=新的String []
        {
            getResources()。的getString(R.string.Lcity)
            getResources()。的getString(R.string.Accommodation)
            getResources()。的getString(R.string.Food)
            getResources()。的getString(R.string.Shopping)
            getResources()。的getString(R.string.Fun)
            getResources()。的getString(R.string.Pcare)
            getResources()。的getString(R.string.Pserv)
            getResources()。的getString(R.string.Education)
            getResources()。的getString(R.string.Health)
            getResources()。的getString(R.string.Phn)
        };
        照片=新的整数[]
        {
            R.drawable.lc,
            R.drawable.ac,
            R.drawable.fd,
            R.drawable.sh,
            R.drawable.fn,
            R.drawable.pc,
            R.drawable.ps,
            R.drawable.ed,
            R.drawable.hm,
            R.drawable.pn
        };        GridView控件=(GridView控件)findViewById(R.id.gridView2);
        gridView.setAdapter(新HomeAdapter(这一点,类别,图片));
        gridView.setSelector(新ColorDrawable(Color.TRANSPARENT));
        gridView.setCacheColorHint(Color.TRANSPARENT);
        gridView.setOnItemClickListener(本);        // this.history =新的ArrayList<视图>();组=这一点;
    }    私人无效lbutton()
    {
        可绘制DRW = NULL;
        如果(getResources()。的getString(R.string.locale).equalsIgnoreCase(EN))
        {
            // ** ** NO
            //lang.setImageResource(R.drawable.gc);
            DRW = getResources()getDrawable(R.drawable.gc)。            编辑= settings.edit();
            editor.putString(郎,恩);
            editor.commit();
        }其他{
            // ** ** NO
            //lang.setImageResource(R.drawable.uk);
            DRW = getResources()getDrawable(R.drawable.uk)。            编辑= settings.edit();
            editor.putString(郎,厄尔尼诺);
            editor.commit();
        }
        tv.setCompoundDrawablesWithIntrinsicBounds(NULL,NULL,DRW,NULL);        / *
         *如果(getResources()。的getString(R.string.locale).equals(EN)){//调用
         *以上方法与语境和放大器; newLocale
         * lang.setImageResource(R.drawable.gc); }其他{//调用上面的方法
         *通过上下文和放大器; newLocale lang.setImageResource(R.drawable.uk); }
         * /
    }    私人无效intialize(){
        // TODO自动生成方法存根
        / *
         *城市=(的ImageButton)findViewById(R.id.iml);住宿=
         *(的ImageButton)findViewById(R.id.ima);食物=(的ImageButton)
         * findViewById(R.id.imfo);购物=(的ImageButton)
         * findViewById(R.id.ims);有趣=(的ImageButton)findViewById(R.id.imfu);
         *健康=(的ImageButton)findViewById(R.id.imh); pcare =(的ImageButton)
         * findViewById(R.id.impc); PSERV =(的ImageButton)
         * findViewById(R.id.imps); ED =(的ImageButton)findViewById(R.id.imed);
         * pH值=(的ImageButton)findViewById(R.id.impn);
         * /         // ** ** NO
        // LANG =(的ImageButton)findViewById(R.id.bLang);        电视=(的TextView)findViewById(R.id.tv);
        / *
         * city.setOnClickListener(本);
         * accommodation.setOnClickListener(本);
         * food.setOnClickListener(本); shopping.setOnClickListener(本);
         * fun.setOnClickListener(本); health.setOnClickListener(本);
         * pcare.setOnClickListener(本); pserv.setOnClickListener(本);
         * ed.setOnClickListener(本); ph.setOnClickListener(本);
         * /        // ** ** NO
        //lang.setOnClickListener
        tv.setOnClickListener
        (
            新OnClickListener()
            {
                公共无效的onClick(视图v)
                {
                    检查();
                }
            }
        );    }    / *
     *公共无效的onClick(视图v){// TODO自动生成方法存根开关
     *(v.getId()){案件R.id.iml:majorlist =新意图(this.getBaseContext()
     * MajorList.class); majorlist.putExtra(类型,
     * getResources()的getString(R.string.Lcity)); // startActivity(majorlist);
     *突破;案例R.id.ima:majorlist =新意图(this.getBaseContext()
     * MajorList.class); majorlist.putExtra(类型,
     * getResources()的getString(R.string.Accommodation));
     * // startActivity(majorlist);打破;案例R.id.imfo:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Food));
     * // startActivity(majorlist);打破;案例R.id.ims:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Shopping));
     * // startActivity(majorlist);打破;案例R.id.imfu:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Fun));
     * // startActivity(majorlist);打破;案例R.id.imh:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Health));
     * // startActivity(majorlist);打破;案例R.id.impc:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Pcare));
     * // startActivity(majorlist);打破;案例R.id.imps:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Pserv));
     * // startActivity(majorlist);打破;案例R.id.imed:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Education));
     * // startActivity(majorlist);打破;案例R.id.impn:majorlist =新
     *意图(this.getBaseContext(),MajorList.class);
     * majorlist.putExtra(类型,getResources()的getString(R.string.Phn));
     * // startActivity(majorlist);打破;
     *
     *}
     *
     * // replaceContentView(MajorList,majorlist);群组=
     *(集团)的getParent(); group.startChildActivity(MajorList,majorlist);
     *
     *
     *浏览视图= getLocalActivityManager()。startActivity(销售,
     * majorlist.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
     *
     * // replaceView(视图);
     *
     *}
     * /
    @覆盖
    公共无效onBack pressed()
    {
        super.onBack pressed();
        群组=(集团)的getParent();
        group.onBack pressed();
        homelayout.setBackgroundDrawable(NULL);
    }    私人无效检查()
    {
        如果(settings.getString(郎,恩)。equalsIgnoreCase(EN))
        {
            编辑= settings.edit();
            editor.putString(郎,厄尔尼诺);
            editor.commit();
            Language_check(这一点,厄尔尼诺);
        }
        其他
        {
            编辑= settings.edit();
            editor.putString(郎,恩);
            editor.commit();
            Language_check(这一点,恩);
        }
        / *
         *如果(getResources()。的getString(R.string.locale).equals(EN)){//调用
         *以上方法与语境和放大器; newLocale Language_check(这一点,厄尔尼诺);
         *编辑= settings.edit(); //editor.putString(\"lang,)}其他{//调用
         *以上方法与语境和放大器; newLocale Language_check(这一点,恩); }
         * /
    }    私人无效Language_check(上下文的背景下,串串)
    {
        区域设置locale2 =新的语言环境(字符串);
        Locale.setDefault(locale2);
        配置CONFIG2 =新配置();
        config2.locale = locale2;
        getBaseContext()。getResources()。updateConfiguration(CONFIG2,
            。getBaseContext()getResources()getDisplayMetrics());
        群组=(集团)的getParent();
        //的setContentView(R.layout.home_layout);        // db.getcityDetails()。getDatabase()。
        意图I =新意图(这一点,LayoutTabAct.class);
        i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        group.startActivity(ⅰ);
        group.onBack pressed();
        完();        // ** 这不好!! **
        System.gc()的;        // this.destroyActivity();
        //意图开始=新意图(com.tg.sam.LayoutTabAct);
        // startActivity(开始);        //完成();
        //的setContentView(R.layout.home_layout);
        // setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        // setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
    }    公共无效onItemClick(适配器视图<>为arg0,ARG1观,诠释ARG2,长ARG3)
    {
        // startActivity(majorlist);        如果(ARG2 == 9)
        {
            majorlist =新意图(this.getBaseContext(),PhoneList.class);
            majorlist.putExtra(类型,类别[ARG2]);
        }
        其他
        {
            // replaceContentView(MajorList,majorlist);
            majorlist =新意图(this.getBaseContext(),MajorList.class);
            majorlist.putExtra(类型,类别[ARG2]);
        }
        群组=(集团)的getParent();
        group.startChildActivity(MajorList,majorlist);
        //}
    }    / *
     *公共无效replaceView(视图v){history.add(V);的setContentView(五);
     *
     *}
     *
     *公共无效回(){如果(history.size()0){
     * history.remove(history.size() - 1);如果(history.size()大于0){
     *的setContentView(history.get(history.size() - 1)); }其他{完成(); }}
     *其他{完成(); }}
     *
     *公共无效backToFirst(){int长度= history.size();而(大小大于1){
     * history.remove(尺寸 - 1);大小= history.size(); }
     *的setContentView(history.get(0)); }
     *
     * @覆盖公共无效onBack pressed(){Home.group.back();返回; }
     * /
}

和,finially,这是你全新的 HomeAdapter.java

 包com.tg.sam;进口的java.io.File;
进口java.io.FileInputStream中;
进口java.io.FileOutputStream中;
进口java.io.IOException异常;进口android.content.Context;
进口android.graphics.Bitmap;
进口android.graphics.BitmapFactory;
进口android.graphics.drawable.Drawable;
进口android.graphics.Typeface;
进口android.util.Log;
进口android.view.LayoutInflater;
进口android.view.View;
进口android.view.ViewGroup;
进口android.widget.BaseAdapter;
进口android.widget.ImageView;
进口android.widget.TextView;//进口com.mycomics.sam.R;公共类HomeAdapter延伸BaseAdapter
{
    私人上下文的背景下;
    私人最终的String [] mobileValues​​;
    私人整数[]图像;    公共HomeAdapter(上下文的背景下,字符串[] mobileValues​​,整数[]图片)
    {
        this.context =背景;
        this.mobileValues​​ = mobileValues​​;
        this.images =图像;
    }    公共查看getView(INT位置,查看convertView,父母的ViewGroup)
    {
        LayoutInflater吹气=(LayoutInflater)上下文
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);        查看GridView控件= NULL;        如果(convertView == NULL)
        {
            GridView控件=新景(背景);            //从mobile.xml布局
            GridView控件= inflater.inflate(R.layout.home_mobile,NULL);            //设定值成的TextView            / *如果(mobile.equals(寄宿)){
                imageView.setImageResource(R.drawable.miaccomodation);
            }否则如果(mobile.equals(食品)){
                imageView.setImageResource(R.drawable.mifood);
            }否则如果(mobile.equals(海滩)){
                imageView.setImageResource(R.drawable.mibeach);
            }否则如果(mobile.equals(旅游)){
                imageView.setImageResource(R.drawable.mitourism);
            }否则如果(mobile.equals(健康)){
                imageView.setImageResource(R.drawable.mihealth);
            }否则如果(mobile.equals(邻居)){
                imageView.setImageResource(R.drawable.miplace);
            }否则如果(mobile.equals(购物)){
                imageView.setImageResource(R.drawable.mishopping);
            }否则如果(mobile.equals(不动产)){
                imageView.setImageResource(R.drawable.mirestate);
            } * /
        }
        其他
        {
            GridView控件=(查看)convertView;
        }
        TextView中的TextView =(TextView的)GridView控件
            .findViewById(R.id.grid_item_label2);
        textView.setText(mobileValues​​ [位置]);        //为主要类别的自定义字体
        字符串字体路径=aus.ttf;
        字体TF = Typeface.createFromAsset(context.getAssets(),字体路径);
        textView.setTypeface(TF);        字符串移动= mobileValues​​ [位置]
        textView.setText(手机);        // ** ** NO
        根据选定的文本//图片集
        // ** ** NO
        // ImageView的ImageView的=(ImageView的)GridView控件
        // .findViewById(R.id.grid_item_image2);
        //imageView.setImageResource(images[position]);
        最终绘制对象DRW =
            。context.getResources()getDrawable(图像[位置]);
        textView.setCompoundDrawablesWithIntrinsicBounds(NULL,DRW,NULL,NULL);        返回GridView控件;
    }    公众诠释getCount将()
    {
        返回mobileValues​​.length;
    }    公共对象的getItem(INT位置)
    {
        返回null;
    }    众长getItemId(INT位置)
    {
        返回0;
    }
}

这一个是与TextView的唯一版本中使用的 home_mobile.xml 。(不是你已经把投放箱上的)结果
现在你应该有ALL。现在测试一下,让我知道。

我终于能够使它发挥作用。结果
这是我的结果。结果
我没有所有的资源,所以我用了我必须派上用场(注意,这是一个模拟的2.8屏幕LDPI,240 * 320):

I have an application that has a grid with 2 columns and 5 rows. Each cell is an image and a text The application works well on 800x480. (below image)

The problem is when I run the emulator for 960x540 the grid look like this (below image)

Both use drawable-hdpi and layout-hdpi.

Is there any way even an unorthodox to overcome this problem ?

The code for the grid is

<?xml version="1.0" encoding="utf-8"?>
  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:id="@+id/IdMainCat"
      android:layout_width="match_parent"
      android:layout_height="fill_parent" >

<!--     Screen Design for Photos
 -->

      <TextView
          android:id="@+id/tv"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_alignParentTop="true"
          android:layout_centerHorizontal="true"
          android:paddingTop="5dp"
          android:text="@string/app_name"
          android:textColor="#ffffff"
          android:textSize="25sp" />

      <ImageButton
          android:id="@+id/bLang"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_alignParentRight="true"
          android:src="@drawable/gc"
          android:layout_margin="2dp"
          android:background="@null"
          android:text="Button" />

      <GridView
          android:id="@+id/gridView2"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:layout_alignParentBottom="true"
          android:layout_below="@+id/tv"
          android:columnWidth="270dp"
          android:gravity="center"
          android:numColumns="2"
          android:paddingTop="7dp"
          android:stretchMode="columnWidth" >

      </GridView>


  </RelativeLayout>

and the code for the images is

<?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:background="@drawable/gridview_style"
    android:layout_marginTop="10dp"
    android:layout_margin="10dp">

    <ImageView
        android:id="@+id/grid_item_image2"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:weightSum="0.6"
        android:layout_weight="0.8"
        android:scaleType="fitXY"
        android:src="@drawable/ac" >

    </ImageView>

    <TextView
        android:id="@+id/grid_item_label2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/grid_item_image2"
        android:background="#aa000000"
        android:gravity="center"
        android:text="@+id/label"
        android:textColor="#e0f901"
        android:textSize="14dp"
        android:textStyle="bold" />

</RelativeLayout>

解决方案

I see many anomalies in the code you posted:

fill_parent has been deprecated since API level 8.
Now, use match_parent, instead.

weights aren't effective in RelativeLayouts.
They only work in LinearLayouts and derivates.

android:textSize should always be in sp, not in dp.

This: android:text="@+id/label" is totally wrong.

TextViews, as well as ImageViews, are clickable.
And ImageButtons, as well as ImageViews, don't show any text.
You really don't need an ImageButton.
Therefore, to optimize (by reducing the View count), an image can be inserted in a TextView as a compound drawable.
Just assign you onClickListener to the TextView, instead of to the ImageButton.

So, my new version of your layout (home_grid.xml) would be:

<?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:background="@drawable/app_back"
    >
    <!-- Screen Design for Photos -->
    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:padding="8dp"
        android:drawablePadding="8dp"
        android:drawableRight="@drawable/gc"
        android:text="@string/app_name"
        android:textColor="#ffffff"
        android:textSize="24sp"
    />
    <GridView
        android:id="@+id/gridView2"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentBottom="true"
        android:layout_below="@+id/tv"
        android:columnWidth="270dp"
        android:gravity="center"
        android:numColumns="2"
        android:stretchMode="columnWidth"
        android:horizontalSpacing="8dp"
        android:verticalSpacing="8dp"
    />
</RelativeLayout>

And the optimized (for performance) layout (home_mobile.xml) for the icons is...

<?xml version="1.0" encoding="utf-8"?>
<TextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/grid_item2"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="8dp"
    android:background="#a000"
    android:drawablePadding="8dp"
    android:drawableTop="@drawable/ac"
    android:gravity="center"
    android:textColor="#fdf0"
    android:textSize="16sp"
    android:textStyle="bold"
/>

You can set the image in Java (Home.java):

Drawable drw = getResources().getDrawable(R.drawable.ac);
// setCompoundDrawablesWithIntrinsicBounds (int left, int top, int right, int bottom)
myText.setCompoundDrawablesWithIntrinsicBounds (null, drw, null, null);

All this should work nearly out-of-the-box.
Just fix your Java code to match (for setting the compound drawables, the clicks, ...)
But it's really a trivial fixing.

[EDIT]

This is your fixed Home.java - but still the home_mobile layout has to be fixed... ... For that, I will need your HomeAdapter.java class, too.

package com.tg.sam;

import java.util.ArrayList;
import java.util.Locale;

import com.tg.sam.HomeAdapter;
import android.app.Activity;
import android.app.ActivityGroup;
import android.app.LocalActivityManager;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.res.Configuration;
import android.graphics.Color;
import android.graphics.Typeface;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageButton;
import android.widget.RelativeLayout;
import android.widget.TextView;

public class Home extends Activity implements OnItemClickListener
{
    public static SharedPreferences settings = null;
    public static SharedPreferences.Editor editor = null;

    public static final String PREFS_NAME = "TG_LANG";
    GridView gridView = null;
    Integer[] images = {};
    String[] categories = {};
    // ** NO **
    //ImageButton lang;

    // city, accommodation, food, shopping, fun, health, pcare, pserv, ed, ph;
    TGDatabase db = null;
    Intent majorlist = null;
    RelativeLayout homelayout = null;
    Bundle bundle = null;
    TextView tv = null;

    // String[] categories = new String[] { "Accomodation" , "Food", "Beaches",
    // "Tourism" , "Health" , "Places" , "Shopping", "Real Estate"};
    /*
     * public static Home group; private ArrayList<View> history;
     */

    @Override
    protected void onPause()
    {
        super.onPause();
        // ** THIS IS REALLY BAD!! **
        System.gc();
    }

    @Override
    public void onConfigurationChanged(Configuration newConfig)
    {
        super.onConfigurationChanged(newConfig);
        /*
         * Toast.makeText(MajorList.this, "onConfigurationChanged(): " +
         * newConfig.toString(), Toast.LENGTH_SHORT).show();
         */
        // onCreate(null);
        /*
        setContentView(R.layout.home_grid);
        //homelayout = (RelativeLayout) findViewById(R.id.IdMainCat);
        //homelayout.setBackgroundResource(R.drawable.app_back);
        */
        // homelayout.setDrawingCacheEnabled(false);
        settings = getSharedPreferences(PREFS_NAME, 0);
        cbutton();
/*      db = new TGDatabase(this);
        intialize();
        db.close();

        String fontPath = "aus.ttf";
        Typeface tf = Typeface.createFromAsset(getAssets(), fontPath);
        tv.setTypeface(tf);
        tv.setTextColor(Color.WHITE);

        categories = new String[]
        {
            getResources().getString(R.string.Lcity),
            getResources().getString(R.string.Accommodation),
            getResources().getString(R.string.Food),
            getResources().getString(R.string.Shopping),
            getResources().getString(R.string.Fun),
            getResources().getString(R.string.Health),
            getResources().getString(R.string.Pcare),
            getResources().getString(R.string.Pserv),
            getResources().getString(R.string.Education),
            getResources().getString(R.string.Phn)
        };
        images = new Integer[]
        {
            R.drawable.lc, R.drawable.ac, R.drawable.fd,
            R.drawable.sh, R.drawable.fn, R.drawable.hm, R.drawable.pc,
            R.drawable.ps, R.drawable.ed, R.drawable.pn
        };

        gridView = (GridView) findViewById(R.id.gridView2);
        gridView.setAdapter(new HomeAdapter(this, categories, images));
        gridView.setOnItemClickListener(this);*/
    }

    private void cbutton() {
        String string = "";
        Drawable drw = null;
        if (settings.getString("lang", "en").equalsIgnoreCase("en"))
        {
            string="en";
            //Language_check(this, "en");
            // ** NO **
            //lang.setImageResource(R.drawable.gc);
            drw = getResources().getDrawable(R.drawable.gc);
        }
        else
        {
            //Language_check(this, "el");
            string="el";
            // ** NO **
            //lang.setImageResource(R.drawable.uk);
            drw = getResources().getDrawable(R.drawable.uk);
        }
        tv.setCompoundDrawablesWithIntrinsicBounds (null, null, drw, null);

        Locale locale2 = new Locale(string);
        Locale.setDefault(locale2);
        Configuration config2 = new Configuration();
        config2.locale = locale2;
        getBaseContext().getResources().updateConfiguration(config2,
            getBaseContext().getResources().getDisplayMetrics());
        /*
        if(getResources().getString(R.string.locale).equalsIgnoreCase("en"))
        {
            lang.setImageResource(R.drawable.gc);
        }
        else
        {
            lang.setImageResource(R.drawable.uk);
        }
        */
    }

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        // setContentView(R.layout.home_layout);
        setContentView(R.layout.home_grid);
        // ** NO - You already set it (my update) in the layout file **
        //homelayout = (RelativeLayout) findViewById(R.id.IdMainCat);
        //homelayout.setBackgroundResource(R.drawable.app_back);
        // homelayout.setDrawingCacheEnabled(false);
        db = new TGDatabase(this);
        intialize();
        db.close();

        settings = getSharedPreferences(PREFS_NAME, 0);
        lbutton();

        String fontPath = "aus.ttf";
        Typeface tf = Typeface.createFromAsset(getAssets(), fontPath);
        tv.setTypeface(tf);
        tv.setTextColor(Color.WHITE);

        categories = new String[]
        {
            getResources().getString(R.string.Lcity),
            getResources().getString(R.string.Accommodation),
            getResources().getString(R.string.Food),
            getResources().getString(R.string.Shopping),
            getResources().getString(R.string.Fun),
            getResources().getString(R.string.Pcare),
            getResources().getString(R.string.Pserv),
            getResources().getString(R.string.Education),
            getResources().getString(R.string.Health),
            getResources().getString(R.string.Phn)
        };
        images = new Integer[]
        {
            R.drawable.lc,
            R.drawable.ac,
            R.drawable.fd,
            R.drawable.sh,
            R.drawable.fn,
            R.drawable.pc,
            R.drawable.ps,
            R.drawable.ed,
            R.drawable.hm,
            R.drawable.pn
        };

        gridView = (GridView) findViewById(R.id.gridView2);
        gridView.setAdapter(new HomeAdapter(this, categories, images));
        gridView.setSelector(new ColorDrawable(Color.TRANSPARENT));
        gridView.setCacheColorHint(Color.TRANSPARENT);
        gridView.setOnItemClickListener(this);

        // this.history = new ArrayList<View>(); group = this;
    }

    private void lbutton()
    {
        Drawable drw = null;
        if (getResources().getString(R.string.locale).equalsIgnoreCase("en"))
        {
            // ** NO **
            //lang.setImageResource(R.drawable.gc);
            drw = getResources().getDrawable(R.drawable.gc);

            editor=settings.edit();
            editor.putString("lang", "en");
            editor.commit();
        } else {
            // ** NO **
            //lang.setImageResource(R.drawable.uk);
            drw = getResources().getDrawable(R.drawable.uk);

            editor=settings.edit();
            editor.putString("lang", "el");
            editor.commit();
        }
        tv.setCompoundDrawablesWithIntrinsicBounds (null, null, drw, null);

        /*
         * if(getResources().getString(R.string.locale).equals("en")) { // Call
         * above method with context & newLocale
         * lang.setImageResource(R.drawable.gc); }else{ // Call above method
         * with context & newLocale lang.setImageResource(R.drawable.uk); }
         */
    }

    private void intialize() {
        // TODO Auto-generated method stub
        /*
         * city = (ImageButton) findViewById(R.id.iml); accommodation =
         * (ImageButton) findViewById(R.id.ima); food = (ImageButton)
         * findViewById(R.id.imfo); shopping = (ImageButton)
         * findViewById(R.id.ims); fun = (ImageButton) findViewById(R.id.imfu);
         * health = (ImageButton) findViewById(R.id.imh); pcare = (ImageButton)
         * findViewById(R.id.impc); pserv = (ImageButton)
         * findViewById(R.id.imps); ed = (ImageButton) findViewById(R.id.imed);
         * ph = (ImageButton) findViewById(R.id.impn);
         */

         // ** NO **
        //lang = (ImageButton) findViewById(R.id.bLang);

        tv = (TextView) findViewById(R.id.tv);
        /*
         * city.setOnClickListener(this);
         * accommodation.setOnClickListener(this);
         * food.setOnClickListener(this); shopping.setOnClickListener(this);
         * fun.setOnClickListener(this); health.setOnClickListener(this);
         * pcare.setOnClickListener(this); pserv.setOnClickListener(this);
         * ed.setOnClickListener(this); ph.setOnClickListener(this);
         */

        // ** NO **
        //lang.setOnClickListener
        tv.setOnClickListener
        (
            new OnClickListener()
            {
                public void onClick(View v)
                {
                    Check();
                }
            }
        );

    }

    /*
     * public void onClick(View v) { // TODO Auto-generated method stub switch
     * (v.getId()){ case R.id.iml: majorlist = new Intent(this.getBaseContext(),
     * MajorList.class); majorlist.putExtra("type",
     * getResources().getString(R.string.Lcity)); //startActivity(majorlist);
     * break; case R.id.ima: majorlist = new Intent(this.getBaseContext(),
     * MajorList.class); majorlist.putExtra("type",
     * getResources().getString(R.string.Accommodation));
     * //startActivity(majorlist); break; case R.id.imfo: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type", getResources().getString(R.string.Food));
     * //startActivity(majorlist); break; case R.id.ims: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type",getResources().getString(R.string.Shopping));
     * //startActivity(majorlist); break; case R.id.imfu: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type",getResources().getString(R.string.Fun));
     * //startActivity(majorlist); break; case R.id.imh: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type", getResources().getString(R.string.Health));
     * //startActivity(majorlist); break; case R.id.impc: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type", getResources().getString(R.string.Pcare));
     * //startActivity(majorlist); break; case R.id.imps: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type", getResources().getString(R.string.Pserv));
     * //startActivity(majorlist); break; case R.id.imed: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type", getResources().getString(R.string.Education));
     * //startActivity(majorlist); break; case R.id.impn: majorlist = new
     * Intent(this.getBaseContext(), MajorList.class);
     * majorlist.putExtra("type", getResources().getString(R.string.Phn));
     * //startActivity(majorlist); break;
     *
     * }
     *
     * //replaceContentView("MajorList", majorlist); Group group =
     * (Group)getParent(); group.startChildActivity("MajorList", majorlist);
     *
     *
     * View view = getLocalActivityManager().startActivity("Sales",
     * majorlist.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)) .getDecorView();
     *
     * // replaceView(view);
     *
     * }
     */
    @Override
    public void onBackPressed()
    {
        super.onBackPressed();
        Group group = (Group) getParent();
        group.onBackPressed();
        homelayout.setBackgroundDrawable(null);
    }

    private void Check()
    {
        if (settings.getString("lang", "en").equalsIgnoreCase("en"))
        {
            editor = settings.edit();
            editor.putString("lang", "el");
            editor.commit();
            Language_check(this, "el");
        }
        else
        {
            editor = settings.edit();
            editor.putString("lang", "en");
            editor.commit();
            Language_check(this, "en");
        }
        /*
         * if(getResources().getString(R.string.locale).equals("en")) { // Call
         * above method with context & newLocale Language_check(this, "el");
         * editor=settings.edit(); //editor.putString("lang", "") }else{ // Call
         * above method with context & newLocale Language_check(this, "en"); }
         */
    }

    private void Language_check(Context context, String string)
    {
        Locale locale2 = new Locale(string);
        Locale.setDefault(locale2);
        Configuration config2 = new Configuration();
        config2.locale = locale2;
        getBaseContext().getResources().updateConfiguration(config2,
            getBaseContext().getResources().getDisplayMetrics());
        Group group = (Group) getParent();
        // setContentView(R.layout.home_layout);

        // db.getcityDetails().getDatabase().
        Intent i = new Intent(this, LayoutTabAct.class);
        i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        group.startActivity(i);
        group.onBackPressed();
        finish();

        // ** THIS IS BAD!! **
        System.gc();

        // this.destroyActivity();
        // Intent Start = new Intent("com.tg.sam.LayoutTabAct");
        // startActivity(Start);

        // finish();
        // setContentView(R.layout.home_layout);
        // setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        // setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
    }

    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
    {
        // startActivity(majorlist);

        if (arg2 == 9)
        {
            majorlist = new Intent(this.getBaseContext(), PhoneList.class);
            majorlist.putExtra("type", categories[arg2]);
        }
        else
        {
            // replaceContentView("MajorList", majorlist);
            majorlist = new Intent(this.getBaseContext(), MajorList.class);
            majorlist.putExtra("type", categories[arg2]);
        }
        Group group = (Group) getParent();
        group.startChildActivity("MajorList", majorlist);
        // }
    }

    /*
     * public void replaceView(View v) { history.add(v); setContentView(v);
     *
     * }
     *
     * public void back() { if (history.size() > 0) {
     * history.remove(history.size() - 1); if (history.size() > 0) {
     * setContentView(history.get(history.size() - 1)); } else { finish(); } }
     * else { finish(); } }
     *
     * public void backToFirst() { int size = history.size(); while (size > 1) {
     * history.remove(size - 1); size = history.size(); }
     * setContentView(history.get(0)); }
     *
     * @Override public void onBackPressed() { Home.group.back(); return; }
     */
}

[EDIT 2]

And, finially, this is your brand new HomeAdapter.java

package com.tg.sam;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.Drawable;
import android.graphics.Typeface;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

//import com.mycomics.sam.R;

public class HomeAdapter extends BaseAdapter
{
    private Context context;
    private final String[] mobileValues;
    private Integer[] images;

    public HomeAdapter(Context context, String[] mobileValues , Integer[] images)
    {
        this.context = context;
        this.mobileValues = mobileValues;
        this.images = images;
    }

    public View getView(int position, View convertView, ViewGroup parent)
    {
        LayoutInflater inflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        View gridView = null;

        if (convertView == null)
        {
            gridView = new View(context);

            // get layout from mobile.xml
            gridView = inflater.inflate(R.layout.home_mobile, null);

            // set value into textview

            /*if (mobile.equals("Accomodation")) {
                imageView.setImageResource(R.drawable.miaccomodation);
            } else if (mobile.equals("Food")) {
                imageView.setImageResource(R.drawable.mifood);
            } else if (mobile.equals("Beaches")) {
                imageView.setImageResource(R.drawable.mibeach);
            } else if (mobile.equals("Tourism")){
                imageView.setImageResource(R.drawable.mitourism);
            } else if (mobile.equals("Health")) {
                imageView.setImageResource(R.drawable.mihealth);
            } else if (mobile.equals("Places")) {
                imageView.setImageResource(R.drawable.miplace);
            } else if (mobile.equals("Shopping")){
                imageView.setImageResource(R.drawable.mishopping);
            }else if (mobile.equals("Real Estate")){
                imageView.setImageResource(R.drawable.mirestate);
            }*/
        }
        else
        {
            gridView = (View) convertView;
        }
        TextView textView = (TextView) gridView
            .findViewById(R.id.grid_item_label2);
        textView.setText(mobileValues[position]);

        // custom font for main categories
        String fontPath = "aus.ttf";
        Typeface tf = Typeface.createFromAsset(context.getAssets(), fontPath);
        textView.setTypeface(tf);

        String mobile = mobileValues[position];
        textView.setText(mobile);

        // ** NO **
        // set image based on selected text
        // ** NO **
        //ImageView imageView = (ImageView) gridView
        //  .findViewById(R.id.grid_item_image2);
        //imageView.setImageResource(images[position]);
        final Drawable drw = 
            context.getResources().getDrawable(images[position]);
        textView.setCompoundDrawablesWithIntrinsicBounds(null, drw, null, null);

        return gridView;
    }

    public int getCount()
    {
        return mobileValues.length;
    }

    public Object getItem(int position)
    {
        return null;
    }

    public long getItemId(int position)
    {
        return 0;
    }
}

This one is to be used with the TextView only version of home_mobile.xml (not the one you have put on DropBox).
Now you should have ALL. Test it now and let me know.

[EDIT 3]

I was finally able to make it work.
This is my result.
I didn't have all the resources, so I used what I had handy (note this is an emulated 2.8" ldpi screen, 240*320):

这篇关于为qHD 800x480的和不同的布局或绘制或两者的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆