小编meh*_*avi的帖子

在动画嵌套视图时,Android 4.4旋转动画会闪烁

当我将我的Android应用程序迁移到4.4时,我注意到一个非常奇怪的情况.突然,我的HUD组件中的旋转动画开始闪烁并且无法正常工作.我试图像这样旋转对象:

rotateAnimation = new RotateAnimation(180, 360, Animation.RELATIVE_TO_SELF,
        0.5f,  Animation.RELATIVE_TO_SELF, 0.5f);
rotateAnimation.setDuration(1000);
rotateAnimation.setRepeatCount(Animation.INFINITE);
rotateAnimation.setRepeatMode(Animation.RESTART);
Run Code Online (Sandbox Code Playgroud)

和:

public static void rotate(final View view) {

if(view.getAnimation() != null) {
    view.getAnimation().cancel();
    view.clearAnimation();
}

view.setAnimation(rotateAnimation);
view.getAnimation().start();
Run Code Online (Sandbox Code Playgroud)

}

上面的代码在任何其他非嵌套视图对象上使用时效果很好,但是当用于ImageView包含在include标记中时,它根本不起作用.奇怪的是,在同一个上下文中调用的同一个对象上的其他动画也可以工作.这是一个4.4 bug吗?我包括如下视图:

    <include
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        layout="@layout/view_trip_hud"
        android:layout_gravity="bottom"/>
Run Code Online (Sandbox Code Playgroud)

而HUD组件本身看起来像这样:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:alpha="0.6"
    android:background="@drawable/background_texture_dark"
    tools:context=".app.ui.fragment.TripSummaryFragment"
    android:gravity="center_vertical|left"
    android:id="@+id/relativeLayoutHUDContainer">


    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center_vertical"
        android:padding="@dimen/ui_default_element_margin">

        <ImageView
                android:id="@+id/imageViewTrackingStatus"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/status_preparing"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true" />

        <TextView
                android:id="@+id/textViewDriveQuality"
                style="@style/HUDFont"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:text="@string/track_status_inactive"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true" />

    </LinearLayout>

    <view
        android:id="@+id/linearLayoutHUDCurrentSpeed"
        android:layout_width="wrap_content"
        android:layout_height="40dp"
        class="pl.com.infinitysoftware.carassistant.util.ui.HUDBlockLayout" …
Run Code Online (Sandbox Code Playgroud)

android android-animation

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

离子构建android错误(:transformClassesWithDexForDebug)

一切都很好,工作完美,直到我执行命令"ionic build android",然后发生此错误.

:transformClassesWithDexForDebugjava.lang.UnsupportedClassesVersionError:com.android.dx/command/Main:不支持的Major.minor版本52.0

等等......

在此输入图像描述

android cordova hybrid-mobile-app ionic-framework

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

警报管理器不按特定的给定时间间隔工作

嗨我正在使用报警管理器3分钟的特定时间间隔,我开始监控.它有时工作,突然我注意到有不规则的时间间隔,这是不正确的!你可以在附件日志中看到"20-Jul-2016 12:22:03 pm"时间变化!我连接了手机并关闭了屏幕并进行了监控!每3分钟,我点击服务器并获得响应为1.但是,有一次,它需要5分钟才能到达服务器!这个奇怪的问题为何发生?

这是代码.

 public void startAt3() {
    Intent alarmIntent = new Intent(ActivityTracking.this, AlarmReceiver.class);
    pendingIntent = PendingIntent.getBroadcast(ActivityTracking.this, 0, alarmIntent, 0);
    AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
                        /* Set the alarm */
    Calendar calendar = Calendar.getInstance();
    calendar.setTimeInMillis(System.currentTimeMillis());
    /* Repeating on every 3 minute interval */
    manager.setInexactRepeating(AlarmManager.RTC_WAKEUP,
            calendar.getTimeInMillis(),
            180000L, pendingIntent);
    String mydate = java.text.DateFormat.getDateTimeInstance().format(Calendar.getInstance().getTime());
    Log.e("alarm",mydate);

}
Run Code Online (Sandbox Code Playgroud)

AlarmReceiver:

   public class AlarmReceiver extends WakefulBroadcastReceiver    {//AlarmReceiver class
@Override
public void onReceive(Context context, Intent intent) {//onReceive method
    String mydate = java.text.DateFormat.getDateTimeInstance().format(Calendar.getInstance().getTime());
    Log.e("alarm",mydate);
    Intent service = …
Run Code Online (Sandbox Code Playgroud)

android broadcastreceiver alarmmanager android-wake-lock android-broadcastreceiver

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

Android - 电话号码格式化和删除国家/地区代码

我已经构建了一个应用程序,我在其中循环并收集用户的电话联系人,我的目标是然后使用这些号码并查询我的解析数据库并查找包含用户联系人的记录(这将检查是否有任何用户联系人是我的应用程序的用户,用户的电话号码将在他们注册时保存到我的解析数据库中)。我遇到的问题是,在收集用户联系人号码时,他们以不同的格式返回,有些是 +447966000000,有些是 07966000000,有些是 07 966000 000000 等等。

我的问题是,什么时候格式化我的号码的最佳方法是将它们保存到数据库并从用户联系人中检索它们,以便所有号码都以相同的格式保存和检索,以便当我对它们进行条件检查时,它们将很容易进行比较?

我已经下载了电话号码实用程序库,但我不确定库中的哪些内容可用于执行此类操作。



到目前为止的代码:

 Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,null,null, null);
        while (phones.moveToNext())
        {
            String name=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
            String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

            Toast.makeText(getApplicationContext(),name + " " + phoneNumber, Toast.LENGTH_LONG).show();
        }
        phones.close();
Run Code Online (Sandbox Code Playgroud)

android phone-number libphonenumber phonenumberutils

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

如何在Android中设计任何屏幕尺寸和 - 密度(Android中的移动设备多屏幕)

如何在Android中的移动设备中处理多屏幕设计而不使用值文件夹中的维度.

我的应用程序它支持所有Android手机,我的设计有问题,因为我在values文件夹中使用dimen来处理它.

所以,任何人都可以帮助我处理这个问题而不使用维度.

android android-layout

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

com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:com/google/android/gms/internal/zzbn.class

将firebase sdk添加到gradle面向下面的问题.

错误:任务':app:transformClassesWithJarMergingForDebug'的执行失败.

com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:com/google/android/gms/internal/zzbn.class

请帮助!!

This is the APP gradle file 

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'me.tatarka.retrolambda'
apply plugin: 'com.fernandocejas.frodo'
apply plugin: 'realm-android'
apply plugin: 'com.neenbedankt.android-apt'


android {
    compileSdkVersion 23
    buildToolsVersion '23.0.2'

    defaultConfig {
        applicationId "com.bt.bms"
        minSdkVersion 16
        targetSdkVersion 23
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        versionCode 6
        versionName "0.0.11"
        multiDexEnabled true

        // Following line of code added to provide support for blurring image using renderscript
        renderscriptTargetApi 16
        renderscriptSupportModeEnabled true
    }

    signingConfigs {
        bms_debug_config {
            keyAlias 'androiddebugkey'
            keyPassword 'android'
            storeFile file('bms_new_app_debug.keystore') …
Run Code Online (Sandbox Code Playgroud)

android firebase

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

在 LinearLayout 中将 ImageView 对齐到右上角

这就是我要的:

[截屏]

在此处输入图片说明

这是我所做的:

<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="30dip"
    android:background="@color/color"
    android:orientation="vertical" >


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_margin="1dp"
        android:background="@color/color"
        android:orientation="horizontal">

        <View
            android:id="@+id/divider"
            android:layout_width="5dp"
            android:layout_height="match_parent"
            android:layout_gravity="center_vertical"
            android:background="@color/grey"
            android:gravity="center_vertical" />


    <LinearLayout
        android:id="@+id/llayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/color"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/label"
            style="@style/some_style"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:layout_marginLeft="8dp"
            android:gravity="left" />

        <TextView
            android:id="@+id/label2"
            style="@style/some_style"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:layout_marginLeft="8dp"
            android:gravity="left" />

    </LinearLayout>

    </LinearLayout>

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

我已经完成了,但问题是如何在垂直线性布局的右上角对齐图像(可以在屏幕截图中看到)。

我也尝试过使用相对布局,图像出现在右上角,但它在文本视图中剪切了我的文本。

请建议:

android imageview android-linearlayout

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