Android 通过根视图取得所有子视图

LinearLayout linearLayout = (LinearLayout) findViewById(R.id.main_container);
OnClickListener listener = new NewClickListener();
Logger.Logger_d("linearLayout.getChildCount:"+linearLayout.getChildCount());

打印出所有子视图数量

for (int i = 0; i < linearLayout.getChildCount(); i++) {
  View view = linearLayout.getChildAt(i);
  if (view instanceof Button) {
    view.setOnClickListener(listener);
  }
}

得到子视图,查看视图继承关系进行下一步操作

时间: 2024-10-17 15:24:57

Android 通过根视图取得所有子视图的相关文章

遍历输出所有子视图(View)

传入一个View,可以获取传入视图的所有子视图,写入桌面,可以在火狐浏览器下查看 /** * 程序获得了焦点就会自动调用这个方法(只要程序获得了焦点,所有控件才能接收触摸事件) */ - (void)applicationDidBecomeActive:(UIApplication *)application { NSString *xml = [self digView:self.window]; [xml writeToFile:@"/Users/aplle/Documents/window

Android开发技巧一--weight属性实现视图的居中(半)显示

面试时,一位面试官问到:"如果我想讲按钮居中显示,并且占据其父视图宽度的一半,应该怎么做到呢?"即实现这种效果: 我们使用weightSum属性和layout_weight属性实现这一要求: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

【Android】9.2 内置行视图的分类和呈现效果

分类:C#.Android.VS2015: 创建日期:2016-02-18 一.简介 Android内置了很多行视图模板,在应用程序中可直接使用这些内置的视图来呈现列表项. 要在ListView中使用内置的行视图呈现列表项,只需要通过Android.Resource.Layout类的属性指定资源的ID即可.例如: public class MainActivity : Activity { -- protected override void OnCreate(Bundle bundle) {

Android应用之定义阴影和裁剪视图技巧

今天要写的阴影和视图裁剪,无法向下兼容,请注意. Material Design 为用户界面元素引入了深度这个元素.深度帮助用户理解各个元素之间的重要关联和帮助用户关注他们手上的任务. 视图的高度(elevation),通过Z属性表现,通过他的阴影确定:z值更高的视图投影出更大的阴影.视图只在Z=0的平面上投影处阴影:他们不会投影阴影在其他放在下面的视图上面和高于z=0的平面. 有更高Z值的视图挡住Z值较低的视图.无论如何,Z值不会影响到View的大小. 高度也是有用的,当在执行一些动作的时候创

使用Kotlin开发Android应用(IV):自定义视图和Android扩展

使用Kotlin开发Android应用(IV):自定义视图和Android扩展 @author ASCE1885的 Github 简书 微博 CSDN 原文链接 在读完扩展函数和默认值这篇文章之后,那么接下来要介绍什么呢?在本系列第一篇文章中我们说过,Kotlin使得Android开发更加简单,本文我们将进一步作介绍. 自定义视图 你应该还记得,在说到Kotlin的局限性时,我们提到了在Kotlin早期版本(M10之前)是不支持自定义视图的,因为当时只能为每个类创建一个构造函数.这通常是足够的,

iOS一行代码将所有子视图从父视图上移除

原文链接: iOS一行代码将所有子视图从父视图上移除 简书主页:http://www.jianshu.com/users/37f2920f6848 Github主页:https://github.com/MajorLMJ iOS开发者公会-技术1群 QQ群号:87440292 iOS开发者公会-技术2群 QQ群号:232702419 iOS开发者公会-议事区   QQ群号:413102158

ios &ndash; 视图控制器如何管理视图?

移动设备的屏幕有限,所有的东西都需要放到一个单一窗口组成的单一界面显示,在ios中体现为视图切换(在<ios – 视图>中已经说明了视图),当一个视图替换掉另一个视图的时候,会经常使用动画效果,这个任务就是交给视图管理器来完成的. ios5之后应用程序窗口有一个根视图控制器(rootViewController),当不为rootViewController赋值时,会出现"Application windows are expected to have a root view cont

控件移除子视图和从父视图上移出

控件从父视图上移出 一句代码 [self .perTableView removeFromSuperview]; 其实如果移除控件所有子视图 也只需要一句代码即可 [sectionView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];

让超出父视图范围的子视图响应事件,在UIView范围外响应点击

//重写该方法后可以让超出父视图范围的子视图响应事件 - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {     UIView *view = [super hitTest:point withEvent:event];     if (view == nil) {         for (UIView *subView in self.subviews) {             CGPoint tp = [sub