小编VKD*_*Dev的帖子

android NDK中的颜色叠加

我想实现Hue /颜色/饱和度颜色叠加.我看到了宏:

#define ColorBlend_Saturation(T,A,B) ColorBlend_Hls(T,A,B,HueA,LuminationA,SaturationB)
Run Code Online (Sandbox Code Playgroud)

我试图在Adobe Photoshop中使用颜色重现它#332244#557711获得结果颜色 - #431076.然而,应用这些宏后,我得到了颜色 - #320C59结果.

问题1:如何重现色情,饱和度和颜色的photoshop算法?

问题2:如何调整alpha通道?例如,在我的颜色和光学== 50,这应该在Photoshop - #3b195d

c++ android bitmap android-ndk

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

Android:系统覆盖

如何覆盖屏幕?

  1. 它应该是可触摸的
  2. 视图必须覆盖系统操作栏
  3. 视图必须覆盖软按钮返回/ home/recent_apps
  4. Android 4.0 +

    public class MyService extends Service {
    
    @Override
    public void onCreate() {
        super.onCreate();
        WindowManager.LayoutParams params = ViewUtils.generateFullScreenParams(true);
    
        final WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
        wm.addView(overlayView, params);
    }
    ...
    }
    
    Run Code Online (Sandbox Code Playgroud)

和布局参数创建者

public static WindowManager.LayoutParams generateFullScreenParams() {
    return new WindowManager.LayoutParams(
            WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT,
            WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,

            WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
                    | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
                    | WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH
                    | WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
                    | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,

            PixelFormat.TRANSLUCENT);
}
Run Code Online (Sandbox Code Playgroud)

好的,看起来不错.

标志TYPE_SYSTEM_ALERT 覆盖系统栏(android <5.0),覆盖软按钮,但我可以处理onTouch事件

标志TYPE_SYSTEM_OVERLAY 覆盖系统栏,而不是覆盖按钮,我无法处理onTouch事件.

有任何想法吗?

java android android-layout

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

滑动以旋转删除

我需要使用触摸事件删除旋转视图.我的观点不是轻量级的:它包含一个Web浏览器和其他元素.

我实现了幻灯片删除没有旋转,它的工作速度不是很快,但它的工作原理.添加旋转后...非常非常慢.

我正在寻找快速移除旋转的方法.

据我所知,我可以从屏幕上读取位图,隐藏我的视图并在画布上绘制这个位图.我认为,这种方法应该可行.

我的问题是:

  • 我可以使用哪个库?
  • 屏幕旋转怎么样(我必须清除画布,删除我的位图,恢复我的视图,并重置触摸事件)?
  • 也许我可以使用内部拖放的模拟?(嗯,这是个好主意,但如何制作全尺寸阴影和动画动作"移出屏幕"?)

你是如何解决这些问题的?

Mohammed Ali的更新: 我可以阅读我的视图的位图在画布上绘制它.拖放的不透明阴影,阴影大小 ......

animation android drag-and-drop bitmap

6
推荐指数
0
解决办法
282
查看次数

Butterknife绑定活动之外

如何使用活动绑定?

public class MyViewController extends BaseViewController<MyActivity> {

    @BindView(R.id.view_pager)
    ViewPager viewPager;

    public void bindViews() {
        //bind(@NonNull Object target, @NonNull Activity source)
        ButterKnife.bind(this, activity);
    }  
}
Run Code Online (Sandbox Code Playgroud)

看起来不错.但我的应用程序在生成的代码中崩溃:

    protected InnerUnbinder(final T target, Finder finder, Object source) {
    ...
          target.viewPager = finder.findRequiredViewAsType(source, 2131558529, "field 'viewPager'", ViewPager.class);
    ...
}
Run Code Online (Sandbox Code Playgroud)

其中butterknife.internal.Finder.findRequiredViewAsType是

public final <T> T findRequiredViewAsType(Object source, int id, String who, Class<T> cls) {
    View view = findRequiredView(source, id, who);
    try {
      return cls.cast(view);
    } catch (ClassCastException e) {
      String name = getResourceEntryName(view, id);
      throw new …
Run Code Online (Sandbox Code Playgroud)

android butterknife

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