Tag: android layout

LayoutInflater attachToRoot参数是什么意思?

LayoutInflater.inflate文档并不完全清楚attachToRoot参数的用途。 attachToRoot :膨胀的层次结构是否应该附加到根参数? 如果为false,则root仅用于为XML中的根视图创buildLayoutParams的正确子类。 有人可以请详细解释一下,特别是根视图是什么,也可以显示true值和false值之间的行为变化的例子?

获取视图的相对于根布局的坐标

我可以得到一个视图的X和Y位置相对于我的活动在Android的根布局?

Android的RelativeLayout以编程方式设置centerInParent

我有一个像这样的相关布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="10dip"> <Button android:id="@+id/negativeButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="20dip" android:textColor="#ffffff" android:layout_alignParentLeft="true" android:background="@drawable/black_menu_button" android:layout_marginLeft="5dip" android:layout_centerVertical="true" android:layout_centerHorizontal="true"/> <Button android:id="@+id/positiveButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="20dip" android:textColor="#ffffff" android:layout_alignParentRight="true" android:background="@drawable/blue_menu_button" android:layout_marginRight="5dip" android:layout_centerVertical="true" android:layout_centerHorizontal="true"/> </RelativeLayout> 我希望能够编程设置为positiveButton相同的效果: android:layout_centerInParent="true" 我怎样才能编程?

为LinearLayout定义一个百分比宽度?

我想为一个包含一些button的LinearLayout定义一个百分比宽度(70%),这样我可以居中并使子button可以fill_parent。 下面是一张照片,显示我的意思: 我目前的布局看起来像这样: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/layoutContainer" android:orientation="vertical"> <LinearLayout android:layout_width="fill_parent" android:id="@+id/barContainer" android:orientation="horizontal" android:layout_height="40dp" android:background="@drawable/titlebackground"> <ImageView android:id="@+id/barLogo" android:src="@drawable/titlelogo" android:layout_gravity="center_vertical" android:adjustViewBounds="true" android:layout_height="25dp" android:layout_width="wrap_content" android:scaleType="fitXY" android:paddingLeft="5dp"></ImageView> </LinearLayout> <TextView android:layout_height="wrap_content" android:layout_width="fill_parent" android:gravity="center_horizontal" android:id="@+id/searchTip" android:text="@string/searchTip" android:paddingTop="10dp" android:paddingBottom="10dp"></TextView> <LinearLayout android:layout_height="wrap_content" android:id="@+id/linearLayout1" android:orientation="vertical" android:layout_width="wrap_content"> <Button android:text="Button" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> <Button android:layout_width="wrap_content" android:id="@+id/button2" android:layout_height="wrap_content" android:text="Button"></Button> <Button android:layout_width="wrap_content" android:id="@+id/button3" android:layout_height="wrap_content" […]

如何让RelativeLayout使用merge和include?

我已经尝试了几天现在,使我的布局更有效的转换使用几个嵌套的LinearLayouts级别为一个RelativeLayout ,并遇到了一些问题,我还没有find解决方法… 我已经search了Android初学者组和这个网站,一直没能find任何可以帮助我解决问题的东西。 我在其中一个博客上看过,你可以将布局与合并和包含标签结合起来。 所以我所拥有的是一个带有RelativeLayout根元素的主布局文件。 里面有5个include标签,引用5个不同的xml布局文件,每个文件都有一个根元素的合并元素(我的所有合并文件都是相同的,除了在他们的ID)。 我遇到了两个问题,我将在发布我的布局代码的简化版本后解释: 样品主布局文件: <?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:background="@drawable/translucent_gray" > <include android:id="@+id/running_gallery_layout_id" layout="@layout/running_gallery_layout" /> <include android:id="@+id/recent_gallery_layout_id" layout="@layout/recent_gallery_layout" android:layout_below="@id/running_gallery_layout_id" /> <include android:id="@+id/service_gallery_layout_id" layout="@layout/service_gallery_layout" android:layout_below="@id/recent_gallery_layout_id" /> <include android:id="@+id/process_gallery_layout_id" layout="@layout/process_gallery_layout" android:layout_below="@id/service_gallery_layout_id" /> </RelativeLayout> 样本包含合并文件: <?xml version="1.0" encoding="utf-8"?> <merge xmlns:android="http://schemas.android.com/apk/res/android"> <TextView style="@style/TitleText" android:id="@+id/service_gallery_title_text_id" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="left" android:text="@string/service_title" /> <Gallery android:id="@+id/service_gallery_id" android:layout_width="fill_parent" android:layout_height="wrap_content" […]

无法find以下类:android.support.v7.internal.app.WindowDecorActionBar

在Android Studio布局预览中导致以下错误的原因是什么? 渲染问题无法find以下类: – android.support.v7.internal.app.WindowDecorActionBar(修复构buildpath,创build类)提示:尝试构build项目。

如何确定在Android的文件的MIMEtypes?

假设我有一个完整的文件path,如:(/ sdcard / tlogo.png)。 我想知道它的MIMEtypes。 我为它创build了一个函数 public static String getMimeType(File file, Context context) { Uri uri = Uri.fromFile(file); ContentResolver cR = context.getContentResolver(); MimeTypeMap mime = MimeTypeMap.getSingleton(); String type = mime.getExtensionFromMimeType(cR.getType(uri)); return type; } 但是当我调用它,它返回null。 File file = new File(filePath); String fileType=CommonFunctions.getMimeType(file, context);

在android中从上下文获取活动

这一个让我难住。 我需要从自定义布局类中调用一个活动方法。 这个问题是我不知道如何从布局中访问活动。 ProfileView public class ProfileView extends LinearLayout { TextView profileTitleTextView; ImageView profileScreenImageButton; boolean isEmpty; ProfileData data; String name; public ProfileView(Context context, AttributeSet attrs, String name, final ProfileData profileData) { super(context, attrs); …… …… } //Heres where things get complicated public void onClick(View v) { //Need to get the parent activity and call its […]

Android:无法将@ drawable /图片转换为绘图

在我的可绘制文件夹中有几个图像,他们都参考完美,但是当我尝试在同一文件夹中添加具有完全相同大小的更多图像,并尝试引用它时,标记为“无法转换@ drawable / picture into a drawable“ 。 我用不同的名字尝试了相同的图像,只是一直给我那个错误。 我也尝试了不同的XML布局和相同的东西。 此外,图片的名称已经“jack”,“abc”,“question_mark”,你可以看到严格的规则,你可以使用什么字符,仍然错误消息不断出现。 任何意见将是如何解决这个问题很好,谢谢。 无法将@ drawable / picture转换为drawable

什么是“应用程序”的Android XML名称空间?

以下是我从res/menu/main.xml文件中看到的app名称空间示例 <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity" > <item android:id="@+id/action_settings" android:title="@string/action_settings" android:orderInCategory="100" app:showAsAction="never" /> </menu> app名称空间的用途是什么? 它是一个“标准的”Android XML命名空间吗? 对于放置在两个不同名称空间(例如app:showAsAction和android:showAsAction )中的相同属性,可以使用相同的值选项。 从文档 : android:showAsAction=["ifRoom" | "never" | "withText" | "always" | "collapseActionView"] android:showAsAction=["ifRoom" | "never" | "withText" | "always" | "collapseActionView"] 也就是说,如果这个属性是相反的,那么上面例子中的那一行代表了其他的意思: android:showAsAction="never" 它几乎看起来可能是某种“子类”机制,但我似乎无法从Google / Android来源find有关app名称空间的任何真实文档。