相关疑难解决方法(0)

android:动画颜色从颜色变为颜色

假设我有两种颜色,我需要创建一个快速从颜色切换到另一种颜色的实时动画.

我试图增加十六进制的颜色,直到我到达另一个,但这给了一个非常糟糕的动画,因为它显示了许多不相关的颜色.

setColorFilter(color, colorfilter)用来改变imageview的颜色.

改变HUE会给我最好的视觉效果吗?如果是这样,我怎样才能将其改为纯色?

解决方案:我通过递归移位色调来解决它

private int hueChange(int c,int deg){
       float[] hsv = new float[3];       //array to store HSV values
       Color.colorToHSV(c,hsv); //get original HSV values of pixel
       hsv[0]=hsv[0]+deg;                //add the shift to the HUE of HSV array
       hsv[0]=hsv[0]%360;                //confines hue to values:[0,360]
       return Color.HSVToColor(Color.alpha(c),hsv);
    }
Run Code Online (Sandbox Code Playgroud)

android colors

46
推荐指数
8
解决办法
5万
查看次数

动画选择器/状态转换

我的ListView有一个简单的选择器

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

    <item android:drawable="@drawable/yellow_arc" android:state_activated="true"/>
    <item android:drawable="@drawable/yellow_nonarc" android:state_activated="false"/>

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

当视图的状态从激活变为未激活时,我希望为这些绘图之间的过渡设置动画,反之亦然.

如果您在API演示中运行示例,则会在视图的激活状态发生更改时看到明显的淡入/淡出动画.

所以我想要的是一个自定义动画,同时改变视图的状态.我认为它应该通过xml完成​​,但我找不到方法.

提前致谢.

编辑:

我想我找到了一些有用的东西activated_background.xml,\Android\android-sdk\platforms\android-API_VERSION\data\res\drawable其中包括

<selector xmlns:android="http://schemas.android.com/apk/res/android"
        android:exitFadeDuration="@android:integer/config_mediumAnimTime">
    <item android:state_activated="true" android:drawable="@android:drawable/list_selector_background_selected" />
    <item android:drawable="@color/transparent" />
</selector>
Run Code Online (Sandbox Code Playgroud)

因此API演示中的示例通过声明一个来实现这个淡出动画exitFadeDuration.然而,这并不是我想要的.我想为状态drawables之间的过渡声明自定义动画,因为淡入/淡出动画对我的drawable来说看起来不太好.

animation android transition android-listview

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

以编程方式更改android中矢量的fillColor

我想以编程方式在Android中编辑矢量文件的填充颜色.

在xml文件中,我可以使用android:fillColor属性设置我的颜色, 但我想在运行时更改颜色.

有什么例子吗?谢谢.

android vector android-vectordrawable

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

在SearchView上单击更改工具栏颜色/样式

我有一个简单的问题.

单击"搜索"图标时,如何将工具栏的颜色/或主题更改为白色?

每当点击搜索图标时,我希望工具栏为白色(背面箭头为黑色/灰色).我在MenuItem中添加了SearcView(android.support.v7.widget.SearchView)

这个 在此输入图像描述

在此输入图像描述

然后在单击"返回"按钮时返回原始工具栏颜色.

android android-toolbar

15
推荐指数
1
解决办法
6271
查看次数

Android objectAnimator动画布局的backgroundColor

我有个问题.我想动画的背景颜色LinearLayout使用ObjectAnimator.
问题是,它的动画,但它确实存在期间也没有保健valueFromvalueTo.

这是我的xml文件:

<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="2000"
    android:propertyName="backgroundColor"
    android:repeatCount="infinite"
    android:repeatMode="reverse"
    android:valueFrom="#FF0000"
    android:valueTo="#000000" />
Run Code Online (Sandbox Code Playgroud)

在Java中我称之为:

ObjectAnimator objAnim = (ObjectAnimator)AnimatorInflater.loadAnimator(getActivity(), R.animator.animator_bkg);
objAnim.setTarget(view);
objAnim.start();
Run Code Online (Sandbox Code Playgroud)

请注意,当我为布局的alpha设置动画时,它会按预期工作.
这是Android的bug(华硕Transformer上的4.0.3),还是我错过了什么?

android android-animation

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

如何创建变色动画?(机器人)

我有一个TextView和一些文本.我需要创建一个持续30秒的动画,它会慢慢地将文本颜色从绿色变为红色.有任何想法吗?

animation android colors textview

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

Android用淡入/淡出动画改变背景图像

我编写的代码可以每5秒随机更改一次背景图像.现在我想使用淡入/淡出动画来改变背景图像,但我不知道如何使用这个动画.

这是我的来源:

void handlechange() {

    Handler hand = new Handler();
    hand.postDelayed(new Runnable() {

        @Override
        public void run() {
            // TODO Auto-generated method stub

            // change image here
            change();

        }

        private void change() {
            // TODO Auto-generated method stub

            Random rand = new Random();

            int index = rand.nextInt(image_rundow.length);

            mapimg.setBackgroundResource(image_rundow[index]);

            handlechange();
        }
    }, 4000);

}
Run Code Online (Sandbox Code Playgroud)

一切都好.我可以随机更改背景图像,但我不知道如何使用动画淡入/淡出.

如果有人知道解决方案,请帮助我,谢谢.

android android-animation android-imageview

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

Android改变了ImageView/Bitmap的颜色

我需要找到一种方法来改变Android中位图的颜色.我需要根据int价值在我的应用程序中平滑地替换/更改椭圆形图像的颜色.我需要的东西就像是myValue=5改变我的图像的颜色RED,如果myValue=322改变颜色BLUE.我发现我能做到这一点的唯一方法是使用xml文件,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval" android:padding="10dp">
<!-- you can use any color you want I used here gray color-->
 <solid android:color="#cccccc"/> 
    <corners
     android:bottomRightRadius="10dp"
     android:bottomLeftRadius="10dp"
     android:topLeftRadius="10dp"
     android:topRightRadius="10dp"/>
</shape>
Run Code Online (Sandbox Code Playgroud)

然后在myValue更改时设置我的ImageView图像资源.但是这样我必须创建35个不同的xml文件......我认为这不是一个好主意.

那么谁能建议更好的解决方案呢?

android bitmap android-imageview

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

单击android更改TextView背景颜色

我正在尝试在单击时更改textview的背景.

例如,如果单击文本视图,则背景将变为黄色并保持黄色,直到再次单击为止.然后它返回到默认背景.

当前textview按下时的背景更改,但在发布时返回默认值.

我在互联网上搜索解决方案,并查看堆栈溢出的大部分解决方案,仍然没有解决方案.

可绘制/ selector.xml:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:drawable="@drawable/circle_on" android:state_enabled="true" android:state_pressed="true"/>
     <item android:drawable="@drawable/circle_on" android:state_enabled="true" android:state_focused="true"/>
     <item android:drawable="@drawable/circle_off"/>
</selector>
Run Code Online (Sandbox Code Playgroud)

可绘制/ circle_on:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:shape="oval" >
   <stroke
     android:width="2dp"
     android:color="@color/Gray" >
   </stroke>
   <solid android:color="@color/LightBlue" />
</shape>
Run Code Online (Sandbox Code Playgroud)

可绘制/ circle_off:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:shape="oval" >
    <stroke
        android:width="2dp"
        android:color="@color/Gray" >
    </stroke>
    <solid android:color="@color/WhiteSmoke" />
</shape>
Run Code Online (Sandbox Code Playgroud)

TextView的:

  <TextView
                style="@style/RoundText"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:background="@drawable/repeat_selector"
                android:clickable="true"
                android:text="Sun" >
            </TextView>
Run Code Online (Sandbox Code Playgroud)

文字样式:

  <style name="RoundText">
    <item name="android:textColor">#555555</item>
    <item name="android:gravity">center_vertical|center_horizontal</item>
    <item name="android:textSize">15sp</item>
    <item name="android:textStyle">bold</item>
    <item name="android:fontFamily">sans-serif-thin</item>
</style>
Run Code Online (Sandbox Code Playgroud)

有人可以告诉我我做错了什么

谢谢.

MY解决方案:

    public class PlanTextView extends …
Run Code Online (Sandbox Code Playgroud)

android textview android-background

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

TransitionDrawable作为TextView中的背景无法按预期工作

关注问题:Android上视图背景颜色的动画更改我试图通过TransitionDrawable资源使TextView在两个背景之间淡入淡出.我的转换xml文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<transition xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:drawable="@drawable/gray_bar" />
    <item android:drawable="@drawable/green_bar" />
</transition>
Run Code Online (Sandbox Code Playgroud)

我尝试通过以下方式将其设置为运行时的背景:

TextView answerBox = (TextView) findViewById(R.id.answerBox);
answerBox.setBackgroundResource(R.drawable.correct_transition);
TransitionDrawable transition = (TransitionDrawable) answerBox.getBackground();
transition.startTransition(1500);
Run Code Online (Sandbox Code Playgroud)

结果是textview转换成:

Textview有gray_bar背景 对此: Textview与green_bar背景

当整个灰色条应该变成绿色条.

两者都是9补丁png图像.这些是原件:

gray_bar green_bar

我的猜测是绿色条填满了灰色条内的文字空间,但我不知道为什么.有线索吗?尽管出现了所包含的图像,灰色的也看起来比它应该大得多,但是在转换之前,期间或之后不会改变大小.这可能是9补丁图像的问题,因为我已经测试了正常图像,并且过渡效果很好.

谢谢你的帮助!

android android-layout android-xml

5
推荐指数
1
解决办法
1386
查看次数

TransitionDrawable不考虑填充?

我尝试了这里发布的已接受的解决方案,但似乎忽略了填充.当显示第二个视图(在这种情况下是一个按钮)时,它比具有填充的原始视图小得多.有解决方法吗?谢谢

android transition button padding drawable

2
推荐指数
1
解决办法
1013
查看次数

动画导航栏颜色Android

我有我的风格

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <style name="MYTheme" parent="...">
        <item name="android:navigationBarColor">@color/navigationBarColor</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

我知道我可以改变导航栏的颜色

getWindow().setNavigationBarColor(...);
Run Code Online (Sandbox Code Playgroud)

我想用动画改变颜色,当前颜色和新颜色之间的过渡

android android-5.0-lollipop

2
推荐指数
1
解决办法
1285
查看次数