android自适应宽度
Ⅰ Android 自定义View 宽高总是充满父容器,怎么让它自适应保持对应宽高
自定义View,想要自定义给定宽和高,你要写自定义属性,然后在xml文件中指定宽高才会有效,同时当给定的宽和高的值是wrap_content 或 fill_parent 这类的,这时需要在自定义View中重写onMeasure方法,进行控件的宽高测量。
Ⅱ android开发软件如何做到自适应屏幕大小及不同分辨率的手机
代码中尽量不要设置控件的宽高(尽量使用match_parent或者wrap_content)
即使某些时候要一定要设置控件的大小,那也要用(控件用dp,字体用sp)
图片要分多套设计,mdpi里放320*480的;hdpi里放480*800的;xhdpi放720*1280的;xxhdpi里放1080*1920大小的
某些时间需要按屏幕大小平分的,使用android:layout_weight=""这个属于来平分
不明白邮件我
Ⅲ 在Android写一个表格如何自适应
网友们上网通常会采用800×600、1024×768两种分辨率,由于网页不是用来给自己看的,所以我们必须让自己的网页能够兼顾这两种情况,让不同分辨率设置的网友都能够看到一个排版美观正确的网页。
一、 自然拉伸
如果你的网站结构没有用到大量的图形来衔接,主要由表格来定结构,那么你就可以使用该方法。非常适用于主要由表格、文字来表达信息的简单的网页页面。制作表格时,只要你把表格的宽度属性定义为100%
,表格就会根据分辨率的不同自行调整宽度。
二、 固定居中
在800×600分辨率下制作的网页在1024×768分辨率的机器上打开,整个网页就会跑到左边;1024×768分辨率的网页在800×600分辨率的机器上有时也会变得"不堪入目"。两种分辨率各做一个吧?做起来费劲。所以目前普遍采用的方法是固定居中法!
现在大多数网民都还在用800*600的分辨率,所以我们一般可以以此分辨率为主。只要在网页原代码的<body>后紧加一句<center>,</body>前加一句</center>就OK了。不过有几个问题这是要注意一下,第一个要注意的是上面说到的百分比的问题,表格、单元格的宽度单位最好要使用像素单位,而不要用百分比。例如width=770。如果你的表格宽度设的是百分比,那么使用大于800×600的像素时,网页就会拉宽,这样网页可能会变形。在<body>中加入leftmargin=0,即<body
leftmargin=0>这种情况下,800×600支持的表格宽度为780像素时不会出现滚动条。还有一点要注意的是不能用DW中的层来定位。
三、 兵分两路
如果你的网页不经常更新,而且对页面效果极其在意,那好,你就设计两个页面,分别对应800×600和1024×768两种分辨率。然后根据不同的分辨率进行跳转就行了。
例如:
<script LANGUAGE="JavaScript">
function redirectPage() {
var
url_else =
var
url_800x600 =
var
url_1024x768 = ";
var url_1366x768
=
if ((screen.width ==
800) && (screen.height == 600))
window.location.href= url_800x600;
else if ((screen.width == 1024) &&
Ⅳ android中如何让程序自适应屏幕大小
不同的android
target会有不同的大小,应用程序的界面需要针对不同的大小调整界面元素的尺寸。而且屏幕也可以在横屏和竖屏之间切换,界面也需要调整。
默认情况下,当屏幕方面切换时,activity的oncreate()方法会被重新调用,所以可以在其中通过以下代码来读取屏的方向:
public
void
oncreate()
{
if(this.getresources().getconfiguration().orientation
==
configuration.orientation_landscape)
{
log.i("info",
"landscape");
}
else
if
(this.getresources().getconfiguration().orientation
==
configuration.orientation_portrait)
{
log.i("info",
"portrait");}}
如果在androidmanifest.xml中加入配置
android:configchanges="orientation|keyboardhidden|navigation
当屏幕翻转时,activity就不会重复的调用oncreate()、onpause()和onresume().
而是调用onconfigurationchanged(configuration
newconfig)
int
screenwidth,screenheight;
windowmanager
windowmanager
=
getwindowmanager();
display
display
=
windowmanager.getdefaultdisplay();
screenwidth
=
display.getwidth();
screenheight
=
display.getheight();
也有人提到另一种方法:
displaymetrics
dm
=
new
displaymetrics();
getwindowmanager().getdefaultdisplay().getmetrics(dm);
Ⅳ android recyclerview 怎样实现宽度随item内容自适应
在ListView对象上设置setOnItemClickListener事件,实现onItemClick()方法,可以根据此方法的int类型参数,确定你所点击的事哪个item。然后呢,通过LayoutInflater过滤野唤出你想要得到内容的控件,然后通过控件获取氏脊弯值,歼闷例如:textView.getText().
Ⅵ AIR做的ANDROID游戏怎么做到屏幕大小自适应
1.首先获得手机屏幕的宽高,也就是你要显示的范围的大小
//竖屏
// private var screenWidth:int = stage.fullScreenWidth;
// private var screenHeight:int = stage.fullScreenHeight;
//横屏
private var screenWidth:int = stage.fullScreenHeight;
private var screenHeight:int = stage.fullScreenWidth;
注意的是横屏和竖屏宽高赋值要调转
2.获得1个长方形的显示空间的对象
private var viewPort:Rectangle = new Rectangle(0, 0, screenWidth, screenHeight)
把要显示的starling初始化时候把长方形对象插入到第三个参数
myStarling = new Starling(MainGame,stage,viewPort);
设置starling中要显示画面的大小
myStarling.stage.stageWidth = 480;
myStarling.stage.stageHeight = 320;
完成!
Ⅶ 简单实现ImageView宽度填满屏幕,高度自适应的两种方式
方宏液法一:
<ImageView
android:id="@+id/zb_piclist_item_iamge"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher"
android:visibility="卜衫gone"蔽弊物 />
//获取屏幕宽度
WindowManager m = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics outMetrics = new DisplayMetrics();
m.getDefaultDisplay().getMetrics(outMetrics);
//乘以2是因为左右两侧的宽度
//bobaoArcWidth bobaoArcHeight 原始图片宽高
int height = (int) (width / (Float.parseFloat(bobaoArcWidth)) * (Float.parseFloat(bobaoArcHeight)));
//设置图片参数
ViewGroup.LayoutParams layoutParams = viewHolder.zbPiclistItemIamge.getLayoutParams();
// layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
layoutParams.width = width;
layoutParams.height = height;
viewHolder.zbPiclistItemIamge.setLayoutParams(layoutParams);
方发二
public class ResizableImageView extends ImageView {
}
<LinearLayout
xmlns:android=" http://schemas.android.com/apk/res/android "
android:id="@+id/root"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</LinearLayout>
根据图片的宽度,高度,来按比例显示
final String app_arc_pic = list.get(position).ad_pic;
String adPicHeight = list.get(position).ad_pic_height;
String adPicWidth = list.get(position).ad_pic_width;
int adPicH = Integer.parseInt(adPicHeight);
int adPicW = Integer.parseInt(adPicWidth);
int width = activity.getWindowManager().getDefaultDisplay().getWidth();
Ⅷ Android 怎么使用Bitmap+Canvas 自适应屏幕
ndroid 使用Bitmap+Canvas自适应屏幕方法如下:
1、首先得先获取我们的手机屏幕的大小
3、这样通过这个函数返回的Bitmap对象就是可以适应手机屏幕大小的了。。
Ⅸ android怎么设置自适应大小的背景图片
需要给你的ImageView布局加上Android:adjustViewBounds="true"
<ImageView android:id="@+id/test_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:adjustViewBounds="true"
android:layout_gravity="center"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_launcher" />
然后,在代码里设置ImageView.最大宽度和最大高度,因为adjustViewBounds属性只有在设置了最大高度和最大宽度后才会起作用
int screenWidth = getScreenWidth(this);
ViewGroup.LayoutParams lp = testImage.getLayoutParams();
lp.width = screenWidth;
lp.height = LayoutParams.WRAP_CONTENT;
testImage.setLayoutParams(lp);
testImage.setMaxWidth(screenWidth);
testImage.setMaxHeight(screenWidth * 5); 这里其实可以根据需求而定,我这里测试为最大宽度的5倍