Code Monkey home page Code Monkey logo

Comments (10)

kyriej avatar kyriej commented on July 25, 2024

确实有这个bug,失望修复下

from multiplestatusview.

qyxxjd avatar qyxxjd commented on July 25, 2024

不同状态的ID有没有按规则设置?代码贴出来看一下

from multiplestatusview.

wuxu54 avatar wuxu54 commented on July 25, 2024

loadingView的id 为-1,猜测可能跟名字与其他框架重名有关
解决:
showLoading 方法处添加: if (view.getId() == -1) {
mLoadingView.setId(R.id.loading_view);
}

from multiplestatusview.

wuxu54 avatar wuxu54 commented on July 25, 2024

解决办法二:
showViewById更改为这种方式
private void showViewById(View view) {
final int childCount = getChildCount();
for (int i = 0; i < childCount; i++) {
View view1 = getChildAt(i);
view1.setVisibility(View.GONE);
}
view.setVisibility(VISIBLE);
}

from multiplestatusview.

lindroy avatar lindroy commented on July 25, 2024

今天在改代码时也出现了这个bug,给视图的根布局设置一个id就可以了。否则getId拿到的是-1.

from multiplestatusview.

qyxxjd avatar qyxxjd commented on July 25, 2024
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/empty_view"
    ...>
    ...
</FrameLayout>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/error_view"
    ...>
    ...
</FrameLayout>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/loading_view"
    ...>
    ...
</FrameLayout>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/no_network_view"
    ...>
    ...
</FrameLayout>

四种自定义布局文件按上面的格式设置对应的 ID,这样也会重叠? @gituserboy @lindroy

from multiplestatusview.

lindroy avatar lindroy commented on July 25, 2024
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/empty_view"
    ...>
    ...
</FrameLayout>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/error_view"
    ...>
    ...
</FrameLayout>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/loading_view"
    ...>
    ...
</FrameLayout>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/no_network_view"
    ...>
    ...
</FrameLayout>

四种自定义布局文件按上面的格式设置对应的 ID,这样也会重叠? @gituserboy @lindroy

这样不会,但是我昨天在库里加了一个need_login.xml布局,根布局没有设置Id,getId()时的值就是-1,出现了重叠。

from multiplestatusview.

kyriej avatar kyriej commented on July 25, 2024

我那个已解决,就是id得按 文档那样写死就好了

from multiplestatusview.

qyxxjd avatar qyxxjd commented on July 25, 2024

请仔细阅读 README 注意事项部分

注意事项

必须按如下规则设置对应视图根节点的 view id,否则会导致试图重叠
必须按如下规则设置对应视图根节点的 view id,否则会导致试图重叠
必须按如下规则设置对应视图根节点的 view id,否则会导致试图重叠

1. 如果使用自定义属性

app:emptyView="@layout/..."
app:errorView="@layout/..."
app:loadingView="@layout/..."
app:noNetworkView="@layout/..."

需要设置:

  • 加载中视图的id必须为:loading_view
  • 空视图的id必须为:empty_view
  • 错误视图的id必须为:error_view
  • 无网络视图的id必须为:no_network_view
  • 自定义提示文本的id必须为:status_hint_content

2. 如果需要点击某个 view 进行重试, 需要设置:

  • 空视图内对应的view id:empty_retry_view
  • 错误视图内对应的view id:error_retry_view
  • 无网络视图内对应的view id:no_network_retry_view

from multiplestatusview.

wuxu54 avatar wuxu54 commented on July 25, 2024

因为view我是new出来,未配置相关id。谢谢您的回复

from multiplestatusview.

Related Issues (20)

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.