gpt4 book ai didi

java - LinearLayout 上的监听器

转载 作者:搜寻专家 更新时间:2023-11-01 09:46:43 25 4
gpt4 key购买 nike

我正在动态地向 LinearLayout 添加和删除 View

每当 LinearLayout 的子元素数量发生变化时,我都会尝试检查是否有这样的监听器?

最佳答案

看看ViewGroup.OnHierarchyChangeListener .

将其 onChildViewAdded()onChildViewRemoved() 方法与计数器一起使用,以跟踪 ViewGroup 的子项计数。

你可以在你的 Activity 中做这样的事情:

private childCount;

// ...

@Override
protected void onCreate(Bundle savedInstanceState) {

// ...

final LinearLayout layout = (LinearLayout) findViewById(R.id.yourLayout);

childCount = layout.getChildCount();

layout.setOnHierarchyChangeListener(new ViewGroup.OnHierarchyChangeListener() {
@Override
public void onChildViewAdded(View parent, View child) {
childCount++;
//childCount = layout.getChildCount(); //a safer but slower approach
}

@Override
public void onChildViewRemoved(View parent, View child) {
childCount--;
//childCount = layout.getChildCount();
}
});
}

(只是一个粗略的例子,你可能需要根据自己的需要实现计数器逻辑)

关于java - LinearLayout 上的监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37767410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com