android开发分享android使用include调用内部组件的方法

本文实例讲述了android使用include调用内部组件的方法。分享给大家供大家参考。具体如下: 例子一: sublayout.xml <?x

android开发分享android使用include调用内部组件的方法实例讲述了android使用include调用内部组件的方法。分享给大家供大家参考。具体如下:

上述就是android开发分享android使用include调用内部组件的方法的全部内容,如果对大家有所用处且需要了解更多关于Android学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

例子一:

sublayout.xml

  <?xml version="1.0" encoding="utf-8"?>   <linearlayout xmlns:android="https://schemas.android.com/apk/res/android"     android:orientation="vertical"     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:background="#505050"     >   <textview     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="sublayout"     />   <button   android:id="@+id/mybutton"     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text=" a button "     />   </linearlayout>   mail.xml   <?xml version="1.0" encoding="utf-8"?>   <linearlayout xmlns:android="https://schemas.android.com/apk/res/android"     android:orientation="vertical"     android:layout_width="fill_parent"     android:layout_height="fill_parent"     >   <textview     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="@string/hello"     />   <include android:id="@+id/main1" layout="@layout/sublayout" />   <include android:id="@+id/main2" layout="@layout/sublayout" />   <button     android:id="@+id/startanotheractivity"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text=" start another activity "     />   </linearlayout>     

如何调用组件include进来的组件呢。

  package com.androidincludelayout;   import android.app.activity;   import android.content.intent;   import android.os.bundle;   import android.view.view;   import android.widget.button;   import android.widget.toast;   public class androidincludelayout extends activity {     /** called when the activity is first created. */     @override     public void oncreate(bundle savedinstancestate) {       super.oncreate(savedinstancestate);       setcontentview(r.layout.main);       view sublayout1 = (view)findviewbyid(r.id.main1);       view sublayout2 = (view)findviewbyid(r.id.main2);       button mybutton_main1 = (button)sublayout1.findviewbyid(r.id.mybutton);       button mybutton_main2 = (button)sublayout2.findviewbyid(r.id.mybutton);       button startanotheractivity = (button)findviewbyid(r.id.startanotheractivity);       startanotheractivity.setonclicklistener(new button.onclicklistener(){     @override     public void onclick(view arg0) {     // todo auto-generated method stub     intent intent = new intent();          intent.setclass(androidincludelayout.this, anotheractivity.class);          startactivity(intent);     }});       mybutton_main1.setonclicklistener(new button.onclicklistener(){     @override     public void onclick(view arg0) {     // todo auto-generated method stub     toast.maketext(androidincludelayout.this, "button 1 pressed", toast.length_long).show();     }});       mybutton_main2.setonclicklistener(new button.onclicklistener(){     @override     public void onclick(view arg0) {     // todo auto-generated method stub     toast.maketext(androidincludelayout.this, "button 2 pressed", toast.length_long).show();     }});     }   }

但是如果include进来的xml,是

sublayout.xml

  <?xml version="1.0" encoding="utf-8"?>   <merge xmlns:android="https://schemas.android.com/apk/res/android">   <textview     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="sublayout"     />   <button   android:id="@+id/mybutton"     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text=" a button "     />   </merge>     

则以上的方法将不能实现,会报空指针。
因为用了merge后,导入进来就相当于是当前view下的组件了,所以直接findviewbyid就可以了。
 
这样的话。。。可以解决了include 多次同一个layout的问题

希望android开发分享android使用include调用内部组件的方法所述对大家的android程序设计有所帮助。

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/addevelopment/941091.html

(0)
上一篇 2021年11月14日
下一篇 2021年11月14日

精彩推荐