Articles of android layout

RadioButton不能正确绘制背景

好吧,我在这个智慧的结尾。 我正在使用分段单选button( https://github.com/makeramen/android-segmentedradiobutton )的一个开源代码片段,它的工作很好,除了less数设备不会正确绘制单选button。 这是它应该是这样的: 这就是Xperia X10和Acer Liquid E的外观: 我一直在谷歌search答案,仍然没有运气,所以我想我会来这里,看看有没有人有任何想法是什么原因造成的。 我基本上使用相同的代码作为例子,但在这里的一部分布局作为参考: <com.makeramen.segmented.SegmentedRadioGroup android:id="@+id/jfl_calendar_tabselect" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:checkedButton="@+id/all_button"> <RadioButton android:id="@id/all_button" android:minWidth="80dip" android:minHeight="50dip" android:text="@string/calendar_all" android:button="@null" android:textSize="13dip" android:gravity="center" android:textColor="@color/radio_colors" /> <RadioButton android:id="@+id/mine_button" android:minWidth="80dip" android:minHeight="50dip" android:text="@string/calendar_mine" android:button="@null" android:textSize="13dip" android:gravity="center" android:textColor="@color/radio_colors" android:padding="3dip" /> <RadioButton android:id="@+id/friends_button" android:minWidth="80dip" android:minHeight="50dip" android:text="@string/calendar_friends" android:button="@null" android:textSize="13dip" android:gravity="center" android:textColor="@color/radio_colors" android:padding="3dip" /> </com.makeramen.segmented.SegmentedRadioGroup> 任何帮助将不胜感激!

在.xml文件中除以零错误

在我创build的android应用程序中,在\ res \ layout \ admin.xml中创buildxml文件 我使用的布局是: <ScrollView > <LinearLayout > <TableLayout> . . Components . . </TableLayout> <TableLayout> . . Components . . </TableLayout> </LinearLayout> </ScrollView> 错误 !ENTRY com.android.ide.eclipse.adt 4 0 2011-11-17 13:35:10.046 !MESSAGE admin_view_pin.xml: / by zero !STACK 0 java.lang.ArithmeticException: / by zero at android.widget.TableLayout.mutateColumnsWidth(TableLayout.java:579) at android.widget.TableLayout.shrinkAndStretchColumns(TableLayout.java:568) at android.widget.TableLayout.measureVertical(TableLayout.java:466) at android.widget.TableLayout.onMeasure(TableLayout.java:431) at android.view.View.measure(View.java:10577) […]

以编程方式(作为animation)调整布局的大小,直到“wrap_content”

我面对的问题非常类似 以编程方式调整布局的大小(如animation) 和解决scheme有很大的,但我需要一个更多的function。 我想animation从高度= 0到高度= WRAP_CONTENresize。 但不知道如何测量包装内容的大小。 所以我需要以某种方式检测到我已达到此值或在resize之前计算它。 你有想法如何做到这一点?

Android可以在触摸模式下进行对焦和聚焦

我已经在表格布局中嵌套编辑文本,然后在滚动视图中的表格布局中,可触摸模式中的可调焦/可调焦在真实设备中不起作用,但是令人惊讶的是它在仿真器中起作用。 请提供一些替代解决scheme?

Android:笔触形状创build笔触宽度的边距

我创build了一个矩形形状为了使用它作为列表项背景。 我的问题是笔画不遵循视图边界,而是让+/-笔画宽度的边距。 这是我的形状的xml: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:innerRadiusRatio="1" android:shape="rectangle" > <solid android:color="@color/deminoir" /> <stroke android:width="4dp" android:color="@color/deminoir" /> <padding android:bottom="4dp" android:left="4dp" android:right="4dp" android:top="4dp" /> </shape> 这里是我的风格的XML: <style name="champ"> <item name="android:layout_width">match_parent</item> <item name="android:layout_height">wrap_content</item> <item name="android:orientation">vertical</item> <item name="android:background">@drawable/bordurechamp</item> </style> 最后,我的列表项视图的XML: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" style="@style/champ" > <!– titre –> <TextView android:id="@+id/titre" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/deminoir" android:padding="5dip" android:text="titre" […]

防止图像的像素化,缩进列表视图和添加圆angular

我有一些关于Android上的一些UI开发的问题和疑问。 首先看这个图像: 首先在图像A)这是一个图像,我插入和水平重复给予之字形在屏幕的顶部,而无论screenize和以上,没有内容和背景颜色的textField – 但我敢肯定你可以认为这两种颜色的颜色完全不一样,即使它们都具有相同的hex颜色值(#BF0426)。 其次,你也可以看到在这个曲折形象上的一些严重的像素。 我如何解决这两个问题? 然后在图像B)在这里我有一个简单的listView。 我想要做的,首先是在两边缩小一点,然后绕上下两个项目。 所以基本上我希望它看起来像在屏幕截图上绘制的蓝色边框。 (你的典型的iOS列表视图)。 我怎么去做这个? 提前感谢您的任何提示!

getMeasuredHeight()和measure()后返回0的宽度

我真的很困惑这整个测量的东西,android的布局。 基本上,我想获得实际计算的高度和宽度的视图,当它被布置之前,它被布置。 我需要得到计算的高度和宽度,因为我有一个隐藏的LinearLayout ,我想在使用viewpropertyanimator打开时设置animation。 我需要提供目标宽度(这是计算的宽度)animation之前animation。 这个布局的宽度是dynamic的,因为它依赖于其宽度的android:weight参数,所以我不能给出一个静态值。 这是我的活动课: package com.example.testproject; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.util.Log; import android.view.Display; import android.view.View; import android.widget.LinearLayout; import android.widget.LinearLayout.LayoutParams; public class TestActivity extends Activity { private LinearLayout gmailListContainer, yahooMailListContainer, windowsLiveListContainer; private LinearLayout emailMessageContainer; private Display display; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.setContentView(R.layout.activity_test); gmailListContainer = (LinearLayout) this.findViewById(R.id.email_activity_gmail_layout); yahooMailListContainer […]

以编程方式使用XML布局作为模板创buildandroidbutton

我有一个包含TextView的LinearLayout,并且总是会。 TextView下面至less还会有一个button,但在某些情况下可能会有多个button。 我可以成功创build和添加尽可能多的button,因为我需要编程。 我也可以用编程方式成功设置我需要这些button的外观相关参数/选项。 问题是我不知道如何告诉程序创build的button,它应该使用包含外观和布局参数的XML资源文件,而不是以编程方式设置这些参数。 我已经看了类似的命名问题,并花费时间搞乱API本身,没有用。 编辑: 下面是我正在尝试做的一个近似,希望能够使我的解释更加清晰: private TextView textView; private SomeObject someObject; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View scrollView = inflater.inflate(R.layout.fragment_play_game, container, false); textView = (TextView) scrollView.findViewById(R.id.game_data_text); textView.setText(someObject.getTextForTextView()); LinearLayout layout = (LinearLayout) scrollView.findViewById(R.id.game_data_container); for (String optionText : someObject.getTextForButtons()) { layout.addView(createOptionButton(optionText, layout)); } return scrollView; } private View createOptionButton(String […]

在所有设备的相同位置定位图像的最佳方法?

我已经意识到,我不是100%确定定位一些UI元素的最佳方式,以便它出现在所有设备上的相同位置上。 到目前为止,这些是选项: 为每个设备设置dp填充 使View上方此图像,并更改每个设备的填充 在Java code计算屏幕大小,并从代码中以generics的方式设置它的位置。 例如,设置该图像位于屏幕高度的1/5,并根据当前设备的屏幕高度应用此公式。 类似于第2点,但是不是使用固定的dp ,而是使用layout_weight元素 什么似乎是最好的方法? 有没有更好的方法,我没有在这里提到? 谢谢

使用xml布局dynamic添加片段到GridLayout是不行的

在我们的应用程序中,我们试图dynamic添加片段到GridLayout。 XML格式的空网格布局与片段的布局一样。 在运行时,我们检查一些数据,并从中确定要添加到布局的片段数量以及每个片段使用哪个布局。 当我们有片段为其生成的视图分配一个大小的时候,它是全部工作的,但是如果我们在片段的布局文件中指定了大小,则在网格布局中什么都不显示。 显然,我们可以在创build视图时简单地指定大小,但是我们更愿意在碎片的xml布局中进行,因为这样可以让我们利用Android的内置系统为每个设备select正确的布局。 我正在使用支持库碎片。 如果这有所作为,我不使用支持库GridLayout 相关的代码和XML如下: GridLayout XML: <?xml version="1.0" encoding="utf-8"?> <merge xmlns:android="http://schemas.android.com/apk/res/android"> <ScrollView android:id="@+id/grid_scroll" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_above="@+id/bottom_fragment" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginRight="8dp" android:layout_marginTop="?android:attr/actionBarSize" android:overScrollMode="ifContentScrolls" > <GridLayout android:id="@+id/grid" android:layout_width="match_parent" android:layout_height="wrap_content" android:alignmentMode="alignMargins" android:animateLayoutChanges="true" android:columnCount="3" android:columnOrderPreserved="true" android:orientation="horizontal" android:overScrollMode="ifContentScrolls" android:rowOrderPreserved="true" > </GridLayout> </ScrollView> </merge> 片段XML的一个例子 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="200dp" android:layout_height="100dp" android:alpha="1" > <Button android:id="@+id/button1" android:layout_width="match_parent" android:layout_height="match_parent" […]