小编Tpo*_*6oH的帖子

如何从代码中删除TextView的ellipsized属性?

我将textView设置为在xml中进行椭圆化处理.现在点击我希望它消耗并变得不是椭圆形的.

android textview

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

如何在Android中动态添加新的Android芯片?

我有一个类Question,其中包含一个String数组标签.我将尝试使用Kotlin和新芯片中的每个标签在recyclerview中显示每个问题.这款芯片将包含在chipGroup内.

我的问题是.

如何将阵列的每个标签元素添加到新芯片中?我正在尝试这样做,但显然不起作用.

if (tags != null) {
    for (tag in tags) {
        val chip = Chip(itemView.context)
    }
}
Run Code Online (Sandbox Code Playgroud)

谢谢大家!

android kotlin android-chips

12
推荐指数
2
解决办法
7215
查看次数

从kotlin调用java varargs方法

我有一个java函数:

public static void initialize(@NonNull Activity activity, Settings... settings) {}
Run Code Online (Sandbox Code Playgroud)

我想从kotlin叫它:

fun initialize(activity: Activity, vararg settings: settings) = JavaClass.initialize(activity, settings)
Run Code Online (Sandbox Code Playgroud)

但它没有编译,告诉我有类型不匹配,Settings是必需的,但争论是kotlin.Array<out Settings>

我看到它试图将它与signture相匹配

public static void initialize(@NonNull Activity activity, Settings settings) {}
Run Code Online (Sandbox Code Playgroud)

但我想用

public static void initialize(@NonNull Activity activity, Settings[] settings) {}
Run Code Online (Sandbox Code Playgroud)

kotlin

11
推荐指数
2
解决办法
3895
查看次数

如何从kotlin引用布尔java类?

据我所知,Boolean::class.java给了我Boolean.TYPE,但没有Boolean.class

kotlin

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

Swift中运算符' - '与'abs()'的模糊使用

我正在尝试执行以下操作:

var i = -(abs(-3))
Run Code Online (Sandbox Code Playgroud)

要么

var i = -abs(-3)
Run Code Online (Sandbox Code Playgroud)

要么

var i = -abs(3)
Run Code Online (Sandbox Code Playgroud)

要么

var i = -(abs(3))
Run Code Online (Sandbox Code Playgroud)

但我得到一个错误,说使用减号是模棱两可的.为什么?

swift

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

VideoView泄漏活动

我正在使用以下代码在应用中显示视频VideoActivity:

binding.videoView.setVideoURI(videoUri);
binding.videoView.requestFocus();
binding.videoView.start();

binding.videoView.setOnPreparedListener(new 
    MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mediaPlayer) {      
           binding.progressBar.progressOverlay.setVisibility(View.GONE);
    }
});

binding.videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
    @Override
    public void onCompletion(MediaPlayer mediaPlayer) {
        binding.videoView.suspend();
        binding.videoView.stopPlayback();
        setResult(RESULT_OK);
        finish();
    }
});

binding.videoSkipButton.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    binding.videoView.suspend();
                    binding.videoView.stopPlayback();
                    setResult(RESULT_OK);
                    finish();
                }
            });
Run Code Online (Sandbox Code Playgroud)

在跳过/结束后,我从泄漏金丝雀那里得到一份报告我的活动: 在此输入图像描述

如何消除这种泄漏?

我也看到过类似泄漏跟踪的问题:VideoView内存泄漏

但问题在于ButterKnife解除绑定.我需要做类似的事DataBinding吗?

android memory-leaks leakcanary

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

在某些片段可见时启用显示方向更改,在其他片段时禁用

我在我的应用程序中使用片段.大多数碎片应该只有一个方向 - 肖像.所以我强迫持有人活动始终处于纵向模式.

但是我的一个片段应该同时具有纵向和横向模式.如何只为一个片段启用方向更改?或者我需要将它作为一个单独的活动来处理方向而不依赖于其他片段?

android android-fragments

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

有什么区别:BlocBuilder 和 buildWhen 与 BlocSelector

我正在查看评论文档

/// An optional [buildWhen] can be implemented for more granular control over
/// how often [BlocBuilder] rebuilds.
/// [buildWhen] should only be used for performance optimizations as it
/// provides no security about the state passed to the [builder] function.
/// [buildWhen] will be invoked on each [bloc] `state` change.
/// [buildWhen] takes the previous `state` and current `state` and must
/// return a [bool] which determines whether or not the [builder] function will
/// be invoked.
Run Code Online (Sandbox Code Playgroud)

/// …
Run Code Online (Sandbox Code Playgroud)

dart flutter bloc

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

我可以在java android项目中以某种方式使用C#代码或C#库吗?

我有一些用C#编写的有用代码,我想在我的Android应用程序中使用它.我可以直接使用它,还是需要在Java上重写它?

c# java android

6
推荐指数
2
解决办法
2325
查看次数

将旋转的drawable设置为TextView的drawableLeft

我想在TextView中旋转drawableLeft。

我尝试了这段代码:

Drawable result = rotate(degree);
setCompoundDrawables(result, null, null, null);

private Drawable rotate(int degree)
{
    Bitmap iconBitmap = ((BitmapDrawable)originalDrawable).getBitmap();

    Matrix matrix = new Matrix();
    matrix.postRotate(degree);
    Bitmap targetBitmap = Bitmap.createBitmap(iconBitmap, 0, 0, iconBitmap.getWidth(), iconBitmap.getHeight(), matrix, true);

    return new BitmapDrawable(getResources(), targetBitmap);
}
Run Code Online (Sandbox Code Playgroud)

但这给我在左侧可绘制区域的空白。

实际上,即使是最简单的代码也提供了空格:

Bitmap iconBitmap = ((BitmapDrawable)originalDrawable).getBitmap();
Drawable result = new BitmapDrawable(getResources(), iconBitmap);
setCompoundDrawables(result, null, null, null);
Run Code Online (Sandbox Code Playgroud)

这个很好用:

 setCompoundDrawables(originalDrawable, null, null, null);
Run Code Online (Sandbox Code Playgroud)

android image

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