标签: android-xml

XML预览中的渲染问题:无法找到模式0

更新渲染期间发生的android工作室异常后.

渲染期间引发异常:无法找到模式0

java.lang.IllegalStateException: Unable to locate mode 0
at android.view.DisplayInfo.findMode(DisplayInfo.java:458)
at android.view.DisplayInfo.getMode(DisplayInfo.java:445)
at android.view.Display.getRefreshRate(Display.java:648)
at android.support.v7.widget.RecyclerView.onAttachedToWindow(RecyclerView.java:2392)
at android.view.View.dispatchAttachedToWindow(View.java:15392)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2953)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.AttachInfo_Accessor.setAttachInfo(AttachInfo_Accessor.java:42)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:333)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:389)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:548)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:533)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:966)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:533)
at com.android.tools.idea.rendering.RenderTask.lambda$inflate$53(RenderTask.java:659)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Run Code Online (Sandbox Code Playgroud)

android exception android-xml illegalstateexception

38
推荐指数
2
解决办法
7247
查看次数

用不同的背景颜色的Android按钮

我想使用selector-xml文件更改按钮的背景颜色.我的方法基本上是本页底部示例中的方法:http://developer.android.com/guide/topics/resources/color-list-resource.html

我有一个res/color/button_text.xml,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
          android:color="#ffff0000"/> <!-- pressed -->
    <item android:state_focused="true"
          android:color="#ff0000ff"/> <!-- focused -->
    <item android:color="#ff000000"/> <!-- default -->
</selector>
Run Code Online (Sandbox Code Playgroud)

我的布局包含以下代码:

<Button
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/button_text"
    **android:background="@color/button_text"** /> 
Run Code Online (Sandbox Code Playgroud)

(**只是告诉你我使用android:background而不是android:textcolor)

这段代码崩溃了.它说"二进制XML文件行#4标签需要'drawable'属性或子标签定义drawable.但如果我尝试使用android:textColor,如上面的链接所述,它工作正常.所以它必须是背景问题.我如果没有必要,我不想创建一个9patch-png(基本上我只需要一个"可点击"的矩形,所以我使用带有彩色背景的按钮)

android android-layout android-xml

37
推荐指数
2
解决办法
14万
查看次数

Android getMeasuredHeight返回错误的值!

我正在尝试确定一些UI元素的实际像素尺寸!

这些元素从.xml文件中膨胀,并使用dip宽度和高度进行初始化,以便GUI最终支持多个屏幕大小和dpi(如android规范所推荐).

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="150dip"
android:orientation="vertical">

<ImageView
    android:id="@+id/TlFrame" 
    android:layout_width="110dip" 
    android:layout_height="90dip"
    android:src="@drawable/timeline_nodrawing"
    android:layout_margin="0dip"
    android:padding="0dip"/></LinearLayout>
Run Code Online (Sandbox Code Playgroud)

此前的xml表示一帧.但是我在这里描述的水平布局中动态添加了许多:

<HorizontalScrollView 
        android:id="@+id/TlScroller"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_margin="0dip"
        android:padding="0dip"
        android:scrollbars="none"
        android:fillViewport="false"
        android:scrollbarFadeDuration="0"
        android:scrollbarDefaultDelayBeforeFade="0"
        android:fadingEdgeLength="0dip"
        android:scaleType="centerInside">

        <!-- HorizontalScrollView can only host one direct child -->
        <LinearLayout 
            android:id="@+id/TimelineContent" 
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_margin="0dip"
            android:padding="0dip"
            android:scaleType="centerInside"/>

    </HorizontalScrollView > 
Run Code Online (Sandbox Code Playgroud)

定义为在我的java代码中添加一个框架的方法:

private void addNewFrame()
{       
    LayoutInflater inflater     = (LayoutInflater) _parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    ViewGroup root      = (ViewGroup) inflater.inflate(R.layout.tl_frame, null);
    TextView frameNumber = (TextView) root.findViewById(R.id.FrameNumber);
    Integer val = new Integer(_nFramesDisplayed+1); //+1 …
Run Code Online (Sandbox Code Playgroud)

android android-widget android-ui android-layout android-xml

37
推荐指数
4
解决办法
4万
查看次数

Android scrollview隐藏布局中的顶级内容

我有一个问题,其中android scrollview开始隐藏我在我的布局顶部的一对textview,我发现在这个网站上有另一个人有这个问题,并能够得到帮助不幸的是,帮助他们的人实际上没有说什么修复它,谁能告诉我这里的修复是什么?

android scrollview隐藏顶级内容

任何帮助都很大这里是我的xml代码:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/title_color_dark_transparent" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center_vertical|center_horizontal|center"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="5dp"
        android:orientation="vertical"
        android:paddingTop="5dp" >

        <TextView
            android:id="@+id/saysomething"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/loading"
            android:textColor="#FFFFFF"
            android:textSize="30dp" />

        <TextView
            android:id="@+id/saysomethinginfo"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:text="@string/loading"
            android:textColor="#FFFFFF"
            android:textSize="17dp" />

        <EditText
            android:id="@+id/tweetedittext"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/edit_text"
            android:gravity="top"
            android:hint="@string/edittext_hint"
            android:inputType="textCapSentences|textMultiLine|textAutoCorrect|textAutoComplete"
            android:lines="3"
            android:textAppearance="@style/TextAppearance.EditText"
            android:textSize="17dp" />

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:layout_marginTop="5dp"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/photobutton"
                style="@style/TextAppearance.Button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/button_background"
                android:onClick="photobuttonClicked"
                android:text="@string/photobuttontext"
                android:textSize="15dp" />

            <TextView
                android:id="@+id/charactersremaining"
                android:layout_width="wrap_content" …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-xml android-scrollview

37
推荐指数
2
解决办法
2万
查看次数

选择Android xml文件时,Eclipse Run按钮不起作用

我在Mac上安装了Eclipse Juno SR1和Android SDK Tools 21.1,SDK Platform-tools 16.0.2(最新版).

当我选择了一些XML文件并点击"运行"按钮时,没有任何反应.我必须在Package Explorer中选择一些Java文件或项目.然后它运行.编辑XML文件时非常烦人.它在Android SDK Tools的早期版本中有效.

有谁知道任何解决方案或解决方法?

eclipse android android-xml android-sdk-tools

37
推荐指数
1
解决办法
6474
查看次数

如何在XML中使用指定的字体权重

使用XML中字体功能,您可以为字体系列指定各种字体粗细.例如:

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
             xmlns:app="http://schemas.android.com/apk/res-auto">

    <font android:font="@font/archivo_narrow_regular" android:fontWeight="400" android:fontStyle="normal"
        app:font="@font/archivo_narrow_regular" app:fontWeight="400" app:fontStyle="normal"/>

    <font android:font="@font/archivo_narrow_regular_italic" android:fontWeight="400" android:fontStyle="italic"
        app:font="@font/archivo_narrow_regular_italic" app:fontWeight="400" app:fontStyle="italic"/>

    <font android:font="@font/archivo_narrow_medium" android:fontWeight="500" android:fontStyle="normal"
        app:font="@font/archivo_narrow_medium" app:fontWeight="500" app:fontStyle="normal"/>

    <font android:font="@font/archivo_narrow_medium_italic" android:fontWeight="500" android:fontStyle="italic"
        app:font="@font/archivo_narrow_medium_italic" app:fontWeight="500" app:fontStyle="italic"/>

    <font android:font="@font/archivo_narrow_semibold" android:fontWeight="600" android:fontStyle="normal"
        app:font="@font/archivo_narrow_semibold" app:fontWeight="600" app:fontStyle="normal"/>

    <font android:font="@font/archivo_narrow_semibold_italic" android:fontWeight="600" android:fontStyle="italic"
        app:font="@font/archivo_narrow_semibold_italic" app:fontWeight="600" app:fontStyle="italic"/>

    <font android:font="@font/archivo_narrow_bold" android:fontWeight="700" android:fontStyle="normal"
        app:font="@font/archivo_narrow_bold" app:fontWeight="700" app:fontStyle="normal"/>

    <font android:font="@font/archivo_narrow_bold_italic" android:fontWeight="700" android:fontStyle="italic"
        app:font="@font/archivo_narrow_bold_italic" app:fontWeight="700" app:fontStyle="italic"/>

</font-family>
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何实际利用这些权重; 无论是在XML(布局/样式)文件中,还是在Java代码中.它们没有fontWeight可用的属性TextView,并且Typeface创建的对象ResourcesCompat.getFont(context, R.font.archivo_narrow)没有提到字体权重.

我意识到我只能指定特定的字体资源(即 …

android android-fonts android-xml android-styles

37
推荐指数
3
解决办法
1万
查看次数

以编程方式重新设置TextView高度

我想在将其添加到xml文件的主窗口后重置textView高度.

在RelativeLayout中,

  <TextView
      android:id="@+id/text_l"
      android:layout_width="50sp"
      android:layout_height="50sp"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true"
      android:layout_marginLeft="10sp"
      android:layout_marginTop="145dp"
      android:gravity="center"
      android:textAppearance="?android:attr/textAppearanceLarge"
      android:textColor="#000000" >
  </TextView>
Run Code Online (Sandbox Code Playgroud)

我只想将它从50改为70:

我试过了:

 TextView text = (TextView)findViewById(R.id.text_l);
 text.setHeight(70);
Run Code Online (Sandbox Code Playgroud)

但没有改变.

android textview android-xml

36
推荐指数
2
解决办法
5万
查看次数

错误:解析XML时出错:格式不正确(令牌无效)......?

我正在使用以下XML处理应用程序.但是当我尝试清理/构建我的项目时,会发生以下错误:

"错误:解析XML时出错:格式不正确(无效令牌)"

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView  
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:text="@string/hello";
/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

它可能意味着什么?

xml android android-xml

35
推荐指数
5
解决办法
15万
查看次数

异构GridLayout

更新 - 我的工作解决方案: https ://stackoverflow.com/a/21233824/902172


我正在尝试实现以下布局:

目标布局

我猜GridLayout适合我的需求,但经过2个小时的挣扎后,我甚至无法创建类似的布局..布局错误地调整自身大小,它超出了手机的屏幕,它也没有跨越指定的行和列.

在这里,我选择了一个按钮,以便您可以看到它是如何超出边界的:

失败

这是相关的xml代码:https://gist.github.com/2834492

我已经使用嵌套的线性布局达到了类似的布局,但是无法针对不同的屏幕尺寸正确调整它的大小.


更新 - 近似LinearLayout实现:

XML代码:https://gist.github.com/cdoger/2835887 然而,问题是它没有在这里正确调整自己的一些具有不同屏幕配置的屏幕截图:

在此输入图像描述

在此输入图像描述

在此输入图像描述


TLDR: 有人可以像第一张图片一样向我展示GridLayout的异构布局实现吗?

android grid-layout android-widget android-layout android-xml

34
推荐指数
5
解决办法
4万
查看次数

渐变半径占屏幕大小的百分比

我正在尝试使用径向渐变背景创建一个可绘制的形状,半径将根据屏幕大小进行调整(请参阅相关文档).

这是我的代码:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <gradient
        android:endColor="#000"
        android:gradientRadius="50%p"
        android:startColor="#5d2456"
        android:type="radial" />
</shape>
Run Code Online (Sandbox Code Playgroud)

但它似乎没有用.如果我删除"%p",它可以工作,但是半径将是静态的,因此不会调整到屏幕尺寸......任何想法有什么问题?

android radial-gradients android-xml shapedrawable

34
推荐指数
4
解决办法
2万
查看次数