返回顶部
首页 > 资讯 > 移动开发 >android使用include调用内部组件的方法
  • 610
分享到

android使用include调用内部组件的方法

方法includeAndroid 2022-06-06 09:06:56 610人浏览 安东尼
摘要

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

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

例子一:

sublayout.xml


<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="Http://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="http://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 { 
   
  @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="http://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、merge 、ViewStub详解Android编程之include文件的使用方法Android中使用include标签和merge标签重复使用布局解析android中include标签的使用Android开发之merge结合include优化布局Android开发技巧之ViewStub控件惰性装载深入分析Android ViewStub的应用详解Android组件ViewStub基本使用方法详解Android布局技巧之include、merge与ViewStub标签的巧用


--结束END--

本文标题: android使用include调用内部组件的方法

本文链接: https://lsjlt.com/news/26706.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • android使用include调用内部组件的方法
    本文实例讲述了android使用include调用内部组件的方法。分享给大家供大家参考。具体如下: 例子一: sublayout.xml <?xml vers...
    99+
    2022-06-06
    方法 include Android
  • Android编程之include文件的使用方法
    本文实例分析了Android编程之include文件的使用方法。分享给大家供大家参考,具体如下: 记得很久以前,听一位大神说,程序员都很懒,不懒惰的程序员不是好程序员,当时不明...
    99+
    2022-06-06
    方法 include Android
  • vue.js中怎么通过父组件调用子组件的内部方法
    今天就跟大家聊聊有关vue.js中怎么通过父组件调用子组件的内部方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。子组件:<template&...
    99+
    2024-04-02
  • vue如何从组件外部调用方法
    小编给大家分享一下vue如何从组件外部调用方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!从组件外部调用方法你可以通过给它一个从组件外部调用方法ref:<...
    99+
    2023-06-27
  • Android 使用【AIDL】调用外部服务的解决方法
    在Android 中有一种服务说是服务其实倒不如说是一个接口,这个接口名为:Android Interface Definition Language ,这个接口可提供跨进程访...
    99+
    2022-06-06
    调用 方法 aidl Android
  • php内部方法如何调用
    这篇文章主要介绍“php内部方法如何调用”,在日常操作中,相信很多人在php内部方法如何调用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php内部方法如何调用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-07-05
  • vue如何跨层级调用组件内的方法
    Vue作为一款流行的前端框架,具有强大的数据绑定和组件化开发能力,但在实际项目中,我们常常会遇到跨层级调用组件内的方法的需求。本文将介绍如何使用Vue的组件通信机制实现跨层级调用组件内的方法。一、全局事件总线Vue提供了一个非常简单的全局事...
    99+
    2023-05-23
  • android RadioButton和CheckBox组件的使用方法
    RadioButton是单选按钮,多个RadioButton放在一个RadioGroup控件中,也就是说每次只能有1个RadioButton被选中。而CheckBox是多选按钮...
    99+
    2022-06-06
    radiobutton checkbox 方法 Android
  • Android应用内调用第三方应用的方法
    有时候我们的应用里需要调用别人已经写好的应用(前提是用户手机上已经安装)。自己的应用A调用自己的应用B,有比较多的方法,例如,在被调用的应用B的Activity内,设置Inte...
    99+
    2022-06-06
    调用 方法 Android
  • Android组件popupwindow使用方法详解
    先看效果:  现在很多的应用效果都需要做的炫些,像UC,以及天天静听,效果很炫的,源码已经对外开放了,有兴趣的可以去研究下的  上源码 main.xml ...
    99+
    2022-06-06
    方法 popupwindow Android
  • Android TabHost组件使用方法详解
    最近研究了一下Contacts源码,仿照上面自己写了一个TabHostTest程序,现整理如下: main.xml布局文件: <?xml version="...
    99+
    2022-06-06
    方法 tabhost Android
  • JSP的include指令的使用方法
    JSP的include指令用于在JSP页面中包含其他的JSP页面或静态文件。它的使用方法如下:1. 使用语法,其中fileName是...
    99+
    2023-08-11
    jsp
  • jquery include方法怎么使用
    本篇内容介绍了“jquery include方法怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是jQuery include方法...
    99+
    2023-07-05
  • java内部类调用的方法是什么
    在Java中,内部类调用的方法可以是外部类的方法,也可以是内部类自身的方法。如果内部类想要调用外部类的方法,可以使用以下语法:```...
    99+
    2023-10-08
    java
  • nodejs中怎么调用内部和外部方法
    这篇文章将为大家详细讲解有关nodejs中怎么调用内部和外部方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.创建fun.jsvar fun3...
    99+
    2024-04-02
  • Android SearchView搜索框组件的使用方法
    SearchView是搜索框组件,它可以让用户在文本框里输入文字,通过监听器取得用户的输入,当用户点击搜索时,监听器执行实际的搜索。 本文就为大家分享了SearchView搜索...
    99+
    2022-06-06
    方法 Android
  • Android开发中include控件用法分析
    本文实例讲述了Android开发中include控件用法。分享给大家供大家参考,具体如下: 我们知道,基于Android系统的应用程序的开发,界面设计是非常重要的,它关系着用户...
    99+
    2022-06-06
    android开发 include Android
  • C#使用DLLImport调用外部DLL的方法
    C#.Net调用基本格式: DllImport 属性提供非托管 DLL 函数的调用信息。 [DLLImport(“DLL文件路径”)]修饰符 extern 返...
    99+
    2024-04-02
  • 关于vue父组件调用子组件的方法
    组件 (Component) 是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功...
    99+
    2024-04-02
  • React父组件怎么调用子组件的方法
    本教程操作环境:Windows7系统、react18版、Dell G3电脑。在React中,我们经常在子组件中调用父组件的方法,一般用props回调即可。但是有时候也需要在父组件中调用子组件的方法,通过这种方法实现高内聚。有多种方法,请按需...
    99+
    2023-05-14
    React.js 前端
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作