Skip to content

ui analyze

Carlyle-Lee edited this page Jul 5, 2020 · 4 revisions

页面分析

status: updating

视图拾取

Lens 提供了选中界面中的视图元素的基础能力。
img

  • 操作方式:
    打开视图拾取开关。点击界面中的视图,即可选中相应的视图。

  • 兄弟组件:支持高亮展示选中视图的兄弟组件。

  • 相对距离: 勾选后可选中第二个视图,并展示两个视图之间的相对距离;

  • 视图信息简要: 展示控件的精简视图信息。点击可跳转当前组件页面。

  • 导航按钮:

    • Next: todo fix : 新视图拾取实现方案,有待进一步优化拾取算法。
    • Parent: 选中当前视图的Parent。
    • Row: 直接选中当前视图,在最近的列表视图中的直接子视图。
  • View Debug: 支持为当前选中的视图添加debug 信息;当选中视图时,debug 信息将展示在控件合适的位置。

    • Debug Info:在视图中或者视图附近显示调试文本信息。

    • Debug Action: 在界面上展示动态添加的调试按钮,文本,点击后,可执行预设的调试功能。

      • Debug Info
      LensUtil.setViewDebugInfo(listView, "this is a ListView");
      • DebugAction a. 实现debug 接口, 并为lens 设置实现类。
      ViewInfoConfig.getInstance().setViewInfoHandler(ViewInfoHandle.class);

      b. 在接口方法 onViewDebug 中定制调试能力。

      @Override
      public void onViewDebug(final ViewDebugActions actions, final View view) {
          if (view instanceof MYTextView) {
      //            actions.setViewDebugInfo(view, "this is the view debug info");
              actions.add("reload", new Runnable() {
                  @Override
                  public void run() {
                      ((MYTextView) view).setText(UUID.randomUUID().toString());
                  }
              });
              actions.add("clear", new Runnable() {
                  @Override
                  public void run() {
                      ((MYTextView) view).setText("");
                      actions.exitViewDebug();
                  }
              });
          }
      }
当前Activity

视图拾取按钮下方展示的是当前Activity 信息。点击进入界面分析页面。

Clone this wiki locally