Articles of relativelayout

Android线性/相对布局 – 如何“自动调整”中间的对象(3个对象)

我有两种情况与线性(也尝试过相对)在Android的布局。 一个是水平的,另一个是垂直的。 让我们从水平开始吧: 它是这样的: <LinearLayout … > <Button … layout:gravity = "left" layout:width = "wrap_content"/> <TextView … layout:width = ??????? /> <Image …. layout:gravity = "right" layout:width = "wrap_content"/> </LinearLayout> 那么,我想要button留在左边,图像留在右边(坚持到最后,不只是正确的文本视图)和textview(可能与一个autowidth或其他)留在中间。 如果我把textview的宽度设置为“fill / match_parent”,它会把图像从屏幕上传出来,如果我把wrap_content放到屏幕的右边,那么图像也不会停留在屏幕的右边。 同样的案例在垂直,我有这样的事情: <LinearLayout …> <LinearLayout …. layout:height = "wrap_content" layout:gravity= "top" /> <ListView layout:height = ???????> <LinearLayout … layout:height = "wrap_content" layout:gravity […]

如何旋转180度的RelativeLayout?

我正在做一个应用程序,这是为两个人,都看到它的一半,所以我需要垂直翻转一半。 我在LinearLayout使用一个带有两个RelativeLayout的LinearLayout ,它的layout_weight="1" 。 事情是,我不知道如何做这个翻转。 显然android:rotate仅在版本11+(3.0+),但我希望它支持至less2.2。 在阅读了其他相关的问题之后,我尝试了各种各样的东西,其中没有一个似乎起作用。 我试图扩展RelativeLayout并重写onDraw函数,但似乎没有做任何事情。 这是我的代码: public class FlippedRelativeLayout extends RelativeLayout { public FlippedRelativeLayout(Context context) { super(context); } public FlippedRelativeLayout(Context context, AttributeSet attrs) { super(context, attrs); } public FlippedRelativeLayout(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } @Override protected void onDraw(Canvas canvas) { canvas.save(); canvas.rotate(180); super.onDraw(canvas); canvas.restore(); } } 我会很高兴的任何帮助,谢谢!

LinearLayout里面的RelativeLayout?

我想知道我在做什么错了,为什么在RelativeLayout中包含这些button会导致错误? 我还没有编辑太多的布局,难道我不能像这样贴上相对或线性的布局吗? 如果我不把布局中的button包围在一起,那么我只是尝试将它们水平放置在一起。 我认为我做这个整个布局的方式是不好的,因为它的垂直方向看起来相当挤压。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/MainLayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/topButtons" android:layout_margin="4dip" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"> <Button android:id="@+id/deviceConnect" android:layout_margin="8dip" android:layout_weight="3" android:layout_width="fill_parent" android:layout_height="match_parent" android:text="Connect2"/> <LinearLayout android:orientation="vertical" android:layout_weight="1" android:layout_width="fill_parent" android:layout_height="wrap_content"> <LinearLayout android:orientation="horizontal" android:layout_margin="8dip" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:text="Connected Adapter:" android:layout_gravity="center_vertical" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <Spinner android:id="@+id/deviceSpinner" android:layout_width="wrap_content" android:layout_height="wrap_content" android:drawSelectorOnTop="true"/> <TextView android:id="@+id/currentSettings" android:layout_marginLeft="8dip" android:text="Current Settings: Not Connected" […]

Android嵌套布局

我是新来的android布局,可以请告诉我,当使用嵌套的布局,而不是使用下面的布局,布局上面,布局的权利,布局左组件的相对布局左属性的应用程序的性能如何。 例如: <RelativeLayout> <scrollView> <RelativeLayout> <LinearLayout> Header<LinearLayout> <TextView/> <TextView/> <TableLayout> <TableRow><ImageView/> <TextView> <Spinner><TableRow> <TableRow><ImageView/> <TextView> <Spinner><TableRow> <TableRow><ImageView/> <TextView> <Spinner><TableRow> <TableRow><ImageView/> <TextView> <Spinner><TableRow> </TableLayout> <TextView> <TableLayout> <TableRow> <LinearLayout> <ImageView><TextView></LinearLayout> <EditText> </TableRow> <TableRow> <LinearLayout> <ImageView><TextView></LinearLayout> <EditText> </TableRow> <TableRow> <TextView> < Spinner> </TableRow> <TableRow><TextView> <Spinner></TableRow> </TableLayout> <TableLayouts>—</TableLayout> <LinearLayout> footer</LinearLayout> </RelativeLayout> <ScrollView> </RelativeLayout> 感谢和问候Yamini

Android:在ImageView中使用大图片的速度较慢

我有一个Activity ,我在ImageView中有一个背景图像,在图像顶部有九个透明button。 http://img.androidcookie.com/android/GGQqd.png 当我点击任何一个button时,我会在背景的顶部出现一个RelativeLayout 。 http://img.androidcookie.com/android/JvKQK.jpg 问题是:当我在布局中使用大分辨率图像作为背景时,性能非常差。 我使用的是2048 x 1536的PNG图片,重量约为500k。 当我使用像1024 x 768这样的小图像时,应用程序可以正常工作,但看起来很糟糕。 是否有限制或方法使用大图像,而不会失去性能?

为什么我的相对布局占用全屏幕宽度

为什么我的相对布局占用全屏幕宽度 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#f00" > <Button android:id="@+id/Button01" android:text="Press Here" android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> <Button android:id="@+id/Button02" android:text="02" android:layout_alignParentLeft="true" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> </RelativeLayout> 我已经给“wrap_content”指定了相对的布局,为什么它占据了全屏空间。 即使我说android:layout_width =“fill_parent”,输出也是一样的。 请赐教! 编辑:我觉得我不太清楚我的问题。 为此道歉。 当我在一个相对布局中有两个子视图,其中一个左alignment到父alignment,另一个右alignment,相对布局宽度是WRAP_CONTENT,那么我期望布局宽度只是2个button的宽度之和(不是这是WRAP_CONTENT的含义?)。 我知道还有其他的方式来实现UI即时寻找,但我只是想正确理解这些相对的布局标签。 编辑2:我已经尝试了一下,它看起来像是如果我们使用Layout_AlighParentRight与其父宽度作为WRAP_CONTENT然后上面的布局宽度用于计算(如下面的几个答案指出)。 但是,我们只使用Layout_alignParentLeft,然后按预期工作,布局宽度不会扩展到整个屏幕。 感谢帮助的人们!

在Android中从一个活动移动到另一个活动

我想从一个活动转移到另一个(使用虚拟设备)。 当我点击button移动,我的模拟器的一个对话框unfortunately SMS1 has stopped working显示unfortunately SMS1 has stopped working (SMS1是我的应用程序名称)。 任何人都可以帮我纠正我的代码吗? MainActivity.java: package com.example.sms1; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class MainActivity extends Activity implements OnClickListener { Button b1; TextView tv1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); b1 = (Button) findViewById(R.id.button1); […]

Android的 – 如何以RelativeLayout编程方式指定权重?

我想以编程方式做这样的事情 – <LinearLayout> <RelativeLayout1 weight = 1> <RelativeLayout2 weight = 3> <RelativeLayout3 weight = 1> <LinearLayout> 它不会让我以编程方式执行setWeight。 不过,我确实看到RelativeLayout在XML中有一个android:layout_weight参数。 我错过了什么吗?

Android – 同一行中的两个button填充整个宽度

定义相对布局时有一点问题。 我有一个列表视图与滚动和两个button总是可见的列表视图的底部。 我只是想我的两个button有50%的宽度,填补了一条线。 这是我的代码: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <Button android:id="@+id/testbutton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:text="Save" /> <Button android:id="@+id/cancelButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_toRightOf="@+id/testbutton" android:text="Cancel"/> <ListView android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/LstPeriodOptions" android:layout_alignParentTop="true" android:layout_above="@id/testbutton" /> </RelativeLayout> 我试图在线性布局中引入button,并给出重力= 1与宽度= 0DP,但在这种情况下,ListView消失。 请问你能帮帮我吗? 对不起我的英语不好。 这是我想要的结果: 非常感谢,最好的问候。 编辑:这是我用线性布局尝试: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" […]

以编程方式在后台具有GL视图的软键盘上的EditText

我正在做一个游戏,我想在软键盘上方popup一个EditText位置。 这是我的代码在我的主要活动中构buildView Hierarchy时的样子: getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN | WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS); viewGroup = new RelativeLayout(this); viewGroup.setLayoutParams(new ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); view = new GameView(this); RelativeLayout.LayoutParams vLayoutParams = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); vLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_TOP); view.setLayoutParams(vLayoutParams); viewGroup.addView(view); editText = new GameEditText(this); RelativeLayout.LayoutParams etLayoutParams = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); etLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); editText.setGravity(Gravity.BOTTOM); editText.setLayoutParams(etLayoutParams); viewGroup.addView(editText); setContentView(viewGroup); 这里是我的AndroidManifest.xml(这个部分的问题): <activity android:name="app.ember.MainActivity" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:launchMode="singleTask" android:configChanges="orientation|keyboardHidden|screenSize" android:screenOrientation="sensorLandscape" android:windowSoftInputMode="adjustResize" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category […]