Giter Club home page Giter Club logo

uetool's Introduction

UETool GitHub release platform license

INTRODUCTION

中文版

UETool is a debug tool for anyone who needs to show and edit the attributes of user interface views on mobile devices. It works on Activity/Fragment/Dialog/PopupWindow or any other view.

Presently, UETool provides the following functionalities:

  • Move any view on the screen (selecting view repeatedly will select its parent's view)

  • Show/edit normal view's attributes such as TextView's text, textSize, textColor etc.

  • Show two view's relative positions

  • Show grid for checking view alignment

  • Support Android P

  • Show view's current Fragment

  • Show activity's Fragment tree

  • Show view's view holder name if it exist

  • Easily customize any view's attributes you want simply, such as business parameters

  • If you are using Fresco's DraweeView, UETool shows more properties like ImageURI, PlaceHolderImage, CornerRadius etc.

  • If the view selected by UETool isn’t what you want, you can check ValidViews to choose which target view you want

UETool's Effects:


ATTRIBUTE LIST

Attribute Value Sample Editable
Move if you checked it, you can move view easily
ValidViews sometimes target view which UETool offered isn’t you want, you can check it and choose which you want
Class android.widget.LinearLayout
Id 0x7f0d009c
ResName btn
Clickble TRUE
Focoused FALSE
Width(dp) 107 YES
Height(dp) 19 YES
Alpha 1.0
PaddingLeft(dp) 10 YES
PaddingRight(dp) 10 YES
PaddingTop(dp) 10 YES
PaddingBottom(dp) 10 YES
Background #90000000
#FF8F8F8F -> #FF688FDB
[PICTURE] 300px*300px
TextView
Text Hello World YES
TextSize(sp) 14 YES
TextColor #DE000000 YES
IsBold TRUE YES
SpanBitmap [PICTURE] 72px*39px
DrawableLeft [PICTURE] 51px*51px
DrawableRight [PICTURE] 36px*36px
DrawableTop [PICTURE] 36px*36px
DrawableBottom [PICTURE] 36px*36px
ImageView
Bitmap [PICTURE] 144px*144px
ScaleType CENTER_CROP
DraweeView
CornerRadius 2dp
ImageURI https://avatars2.githubusercontent.com/u/1201438?s=200&v=4
ActualScaleType CENTER_CROP
IsSupportAnimation TRUE
PlaceHolderImage [PICTURE] 300px*300px

HOW TO USE

Installation

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

dependencies {
  debugImplementation 'com.github.eleme.UETool:uetool:1.3.4'
  debugImplementation 'com.github.eleme.UETool:uetool-base:1.3.4'
  releaseImplementation 'com.github.eleme.UETool:uetool-no-op:1.3.4'
  
  // if you want to show more attrs about Fresco's DraweeView
  debugImplementation 'com.github.eleme.UETool:uetool-fresco:1.3.4'
}

Usage

Show floating window

UETool.showUETMenu();

UETool.showUETMenu(int y);

Dismiss floating window

UETool.dismissUETMenu();

Filter out unwanted views from selection

UETool.putFilterClass(Class viewClazz);

UETool.putFilterClass(String viewClassName);

Customize your view

// step 1, implement IAttrs

public class UETFresco implements IAttrs {
  @Override public List<Item> getAttrs(Element element) {
  
  }  
}

// step 2, put in UETool

UETool.putAttrsProviderClass(Class customizeClazz);

UETool.putAttrsProviderClass(String customizeClassName);

License

MIT

uetool's People

Contributors

githubwing avatar hangox avatar itkxl avatar jeasonwong avatar jokermonn avatar maqli avatar mummyding avatar petterpx avatar pruepei avatar sintacks-arrers avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

uetool's Issues

gradle version 3.3, compile error

Issue Description

Description

项目比较老, gradle是3.3, 引入依赖编译报错
[Tell us about the issue]

  • What went wrong:
    Execution failed for task ':app:transformClassesWithDexForDevDebug'.

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing java process with main class com.android.dx.command.Main with arguments {--dex --num-threads=4 --multi-dex --output E:\eoa-client\source\app\build\intermediates\transforms\dex\dev\debug\folders\1000\1f\main E:\eoa-client\source\app\build\intermediates\transforms\ajx\dev\debug\jars\1\10\39677893c1817aa2d28d88aae622830584547797.jar
......
E:\eoa-client\source\app\build\intermediates\transforms\ajx\dev\debug\jars\1\10\8ebfff61b929dfce7d0d690c8c5767117b26f827.jar E:\eoa-client\source\app\build\intermediates\transforms\ajx\dev\debug\jars\1\10\219f4406fca35f758ba4fce2df5df08ec4fcd5a8.jar E:\eoa-client\source\app\build\intermediates\transforms\ajx\dev\debug\jars\1\4\61c9e3282442508bdbbb5f050f8005d312f19732.jar E:\eoa-client\source\app\build\intermediates\transforms\ajx\dev\debug\jars\1\4\50f5d7b15ade99752239035a8e4ad641e8032416.jar}
at com.android.build.gradle.internal.process.GradleProcessResult.buildProcessException(GradleProcessResult.java:74)
at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:49)
at com.android.builder.core.DexByteCodeConverter.lambda$dexOutOfProcess$1(DexByteCodeConverter.java:197)
Caused by: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Android\Android Studio\jre\bin\java.exe'' finished with non-zero exit value 2
at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:369)
at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:47)
... 1 more

Reproduce

[The steps to reproduce this issue. What are the parameters, where did you put your code, etc.]

Other Comment

[Add anything else here]

运行demo闪退,是否需要额外操作?

Issue Description

Description

从 github clone 项目,然后在 AS 中打开运行,直接闪退。错误信息如下:

me.ele.uetool.sample E/AndroidRuntime: FATAL EXCEPTION: main
Process: me.ele.uetool.sample, PID: 16578
java.lang.RuntimeException: Unable to start activity ComponentInfo{me.ele.uetool.sample/me.ele.uetool.sample.MainActivity}: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.settings.action.MANAGE_OVERLAY_PERMISSION dat=package:me.ele.uetool.sample flg=0x10000000 }
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2717)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2783)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1590)
at android.os.Handler.dispatchMessage(Handler.java:111)
at android.os.Looper.loop(Looper.java:191)
at android.app.ActivityThread.main(ActivityThread.java:5960)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:821)
Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.settings.action.MANAGE_OVERLAY_PERMISSION dat=package:me.ele.uetool.sample flg=0x10000000 }
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1831)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1545)
at android.app.ContextImpl.startActivity(ContextImpl.java:705)
at android.app.ContextImpl.startActivity(ContextImpl.java:687)
at android.content.ContextWrapper.startActivity(ContextWrapper.java:331)
at me.ele.uetool.UETool.requestPermission(UETool.java:134)
at me.ele.uetool.UETool.showMenu(UETool.java:89)
at me.ele.uetool.UETool.showMenu(UETool.java:83)
at me.ele.uetool.UETool.showUETMenu(UETool.java:63)
at me.ele.uetool.sample.MainActivity$1.onCheckedChanged(MainActivity.java:33)
at android.widget.CompoundButton.setChecked(CompoundButton.java:156)
at android.support.v7.widget.SwitchCompat.setChecked(SwitchCompat.java:1056)
at me.ele.uetool.sample.MainActivity.onCreate(MainActivity.java:41)
at android.app.Activity.performCreate(Activity.java:6361)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2670)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2783) 
at android.app.ActivityThread.-wrap11(ActivityThread.java) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1590) 
at android.os.Handler.dispatchMessage(Handler.java:111) 
at android.os.Looper.loop(Looper.java:191) 
at android.app.ActivityThread.main(ActivityThread.java:5960) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:821) 

Reproduce

[The steps to reproduce this issue. What are the parameters, where did you put your code, etc.]

Other Comment

[Add anything else here]

10

Issue Description

Description

[Tell us about the issue]

Reproduce

[The steps to reproduce this issue. What are the parameters, where did you put your code, etc.]

Other Comment

[Add anything else here]

Build failed with an exception(集成之后不能编译)

compileSdkVersion 26
targetSdkVersion 26

集成之后不能编译。

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:transformDexArchiveWithDexMergerForDebug'.

com.android.build.api.transform.TransformException: com.android.dex.DexException: Multiple dex files define Landroid/support/design/widget/CoordinatorLayout$LayoutParams;
_20180803141311

Can't work with XiaoMi 8

Issue Description

当打开捕捉功能后 选中任意视图均提示 无法在当前位置找到视图。

Description

MIUI 9.5 稳定版

Android 8.1

Reproduce

[The steps to reproduce this issue. What are the parameters, where did you put your code, etc.]

Other Comment

有可能是无法在异形全面屏手机正常工作

[Add anything else here]

Android 9.0 无法捕捉控件。

提示:dispatchTouchEvent-Error: java.lang.NoSuchMethodError: No static method dist(FFFF)F in class Landroid/util/MathUtils; or its super classes (declaration of 'android.util.MathUtils' appears in /system/framework/framework.jar!classes2.dex)
机型:小米MIX2S
could not found view

请问什么时候适配AndroidQ

Issue Description

Description

[Tell us about the issue]

Reproduce

[The steps to reproduce this issue. What are the parameters, where did you put your code, etc.]

Other Comment

[Add anything else here]

希望可以整成一个xposed插件。

Issue Description

我发现这里面大量依赖了资源文件,或者依赖创建新的activity,不方便改造xposed插件额。
改了一点点改不动了,资源id太多了,感觉是不是要把插件的资源和他的资源(反射替换reasource?)进行合并才能解决这个问题,不然改起来太蛋疼了,得把所有findbyid都改一下啥的。。

Description

[Tell us about the issue]

Reproduce

[The steps to reproduce this issue. What are the parameters, where did you put your code, etc.]

Other Comment

[Add anything else here]

Feature Request: 点击跳转的IDEA插件

Feature Description

Description

希望能有一个IDEA联动的插件,APP上点击 Holder/ResName/OnClickListener 之类的value时,IDEA能跳转到对应的文件/代码位置。

初步想法是,电脑和手机处于同一网段,APP或IDEA插件开启一个服务器进行互相通信。APP中点击UETool面板对应资源字段时,发消息到IDEA插件服务器,IDEA插件再进行相应跳转。

Did not work on android P

Issue Description

Description

机型Pixel,Android P上捕捉控件和相对位置都无效,
捕捉时提示could not found view in (xxx,xxx),please select view again。
已授予叠加层权限

Reproduce

同个项目另一台nexus5 6.0没有问题。
谢谢!

version 1.3.2 cannot access https://jitpack.io, is it a private repo?

Could not determine the dependencies of task ':app:dataBindingMergeDependencyArtifactsDebug'.

Could not resolve all task dependencies for configuration ':app:debugRuntimeClasspath'.
Could not resolve com.github.eleme:uetool-base:1.3.2.
Required by:
project :app > project :business:debug:impl
> Could not resolve com.github.eleme:uetool-base:1.3.2.
> Could not get resource 'https://jitpack.io/com/github/eleme/uetool-base/1.3.2/uetool-base-1.3.2.pom'.
> Could not GET 'https://jitpack.io/com/github/eleme/uetool-base/1.3.2/uetool-base-1.3.2.pom'. Received status code 401 from server: Unauthorized

  • Try:

Hope to support jetpack compose

Hello, this is not a question but a suggestion. UETool is very helpful, but it does not support compose. I hope you can get support. Thank you.

Execution failed for task ':app:processAlpha32DebugManifest'.

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:processAlpha32DebugManifest'.

Build cancelled during executing task ':app:processAlpha32DebugManifest'

why?and how to revaluation?
i need help,thanks!

UncaughtException detected: java.lang.NullPointerException: Attempt to get length of null array

UncaughtException detected: java.lang.NullPointerException: Attempt to get length of null array
at me.ele.uetool.RelativePositionLayout.onDraw(RelativePositionLayout.java:66)
at android.view.View.draw(View.java:17214)
at android.view.View.buildDrawingCacheImpl(View.java:16503)
at android.view.View.buildDrawingCache(View.java:16364)
at android.view.View.draw(View.java:16972)
at android.view.ViewGroup.drawChild(ViewGroup.java:3729)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3515)
at android.view.View.updateDisplayListIfDirty(View.java:16191)
at android.view.View.draw(View.java:16980)
at android.view.ViewGroup.drawChild(ViewGroup.java:3729)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3515)
at tv.quanmin.analytics.engine.AnalyticsLayout.dispatchDraw(AnalyticsLayout.java:65)
at android.view.View.updateDisplayListIfDirty(View.java:16191)
at android.view.View.draw(View.java:16980)
at android.view.ViewGroup.drawChild(ViewGroup.java:3729)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3515)
at android.view.View.updateDisplayListIfDirty(View.java:16191)
at android.view.View.draw(View.java:16980)
at android.view.ViewGroup.drawChild(ViewGroup.java:3729)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3515)
at android.view.View.updateDisplayListIfDirty(View.java:16191)
at android.view.View.draw(View.java:16980)
at android.view.ViewGroup.drawChild(ViewGroup.java:3729)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3515)
at android.view.View.updateDisplayListIfDirty(View.java:16191)
at android.view.View.draw(View.java:16980)
at android.view.ViewGroup.drawChild(ViewGroup.java:3729)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3515)
at android.view.View.updateDisplayListIfDirty(View.java:16191)
at android.view.View.draw(View.java:16980)
at android.view.ViewGroup.drawChild(ViewGroup.java:3729)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3515)
at android.view.View.draw(View.java:17217)
at com.android.internal.policy.DecorView.draw(DecorView.java:757)
at android.view.View.updateDisplayListIfDirty(View.java:16196)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:648)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:654)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:762)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:2841)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2649)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2256)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1295)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6400)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:876)
at android.view.Choreographer.doCallbacks(Choreographer.java:688)
at android.view.Choreographer.doFrame(Choreographer.java:623)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:862)
at android.os.Handler.handleCallback(Handler.java:754)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:163)
at android.app.ActivityThread.main(ActivityThread.java:6239)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)

SampleDemo Crash

Issue Description

运行sampleDemo会发生crash

Description

java.lang.NullPointerException: Attempt to invoke virtual method 'void me.ele.uetool.base.Element.reset()' on a null object reference
at me.ele.uetool.EditAttrLayout$ShowMode$2.onDismiss(EditAttrLayout.java:188)
at android.app.Dialog$ListenersHandler.handleMessage(Dialog.java:1361)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

W/ActivityManager: Activity stop timeout for ActivityRecord{3c0dd96 u0 com.com.com/.activity.MainActivity t6901}

Issue Description

Description

在自己的 android 项目中添加依赖以后,在 Activity 的 onPostCreate 中调用 UETool.showUETMenu() ,打开APP以后,启动页正常,然后添加了代码的 MainActivity 页面黑屏,logcat 显示信息为 W/ActivityManager: Activity stop timeout for ActivityRecord{3c0dd96 u0 com.com.com/.activity.MainActivity t6901}

Reproduce

初步考虑,可能是我项目首页做的工作较多。但是网络请求数据校验这些是没办法精简的,请大佬赐教一个思路。谢谢。

Other Comment

[Add anything else here]

java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation

Crashed on API 26:

05-28 15:30:00.872 20619 20619 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example/me.ele.uetool.TransparentActivity}: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3194)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3302)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.ActivityThread.-wrap12(Unknown Source:0)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1891)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:108)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:166)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7425)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.Activity.onCreate(Activity.java:1081)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.support.v4.app.SupportActivity.onCreate(SupportActivity.java:66)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.support.v4.app.FragmentActivity.onCreate(FragmentActivity.java:321)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:84)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at me.ele.uetool.TransparentActivity.onCreate(TransparentActivity.java:32)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.Activity.performCreate(Activity.java:7372)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1218)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3147)
05-28 15:30:00.872 20619 20619 E AndroidRuntime: 	... 9 more

出现了两个悬浮窗

Issue Description

Description

只使用了UETool.showUETMenu();这个方法在application中,
之前一直是正常的,就昨天突然变成了两个悬浮窗。暂时还未找到原因,
其中一个悬浮窗可用,另一个不可用。

demo run appear could not found view please select view again

Issue Description

Description

java.lang.NoSuchFieldException: mGlobal
08-29 14:46:37.265 10216-10216/me.ele.uetool.sample W/System.err: at java.lang.Class.getDeclaredField(Class.java:631)
at me.ele.uetool.CollectViewsLayout.onAttachedToWindow(CollectViewsLayout.java:87)
08-29 14:46:37.270 10216-10216/me.ele.uetool.sample W/System.err: at android.view.View.dispatchAttachedToWindow(View.java:12115)
08-29 14:46:37.275 10216-10216/me.ele.uetool.sample W/System.err: at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2716)
08-29 14:46:37.280 10216-10216/me.ele.uetool.sample W/System.err: at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2716)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2716)
08-29 14:46:37.285 10216-10216/me.ele.uetool.sample W/System.err: at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2716)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2716)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2716)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1352)
08-29 14:46:37.290 10216-10216/me.ele.uetool.sample W/System.err: at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1144)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4730)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
at android.view.Choreographer.doCallbacks(Choreographer.java:555)
at android.view.Choreographer.doFrame(Choreographer.java:525)
08-29 14:46:37.295 10216-10216/me.ele.uetool.sample W/System.err: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4947)

Reproduce

型号:GT-N5100
Android版本:4.1.2
运行demo-> 点击捕捉控件 ->点击控件 -> 提示could not found view please select view again和堆栈信息
执行此处
Field mGlobalField = Class.forName("android.view.WindowManagerImpl").getDeclaredField("mGlobal");

Other Comment

[Add anything else here]

A good idea

How about export the runing app‘s current screen xml code?

That means we can less code for greate change!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.