android 布局-MainActivity.this.year的作用是什么?

问题描述

MainActivity.this.year的作用是什么?
    datePicker.init(year,month,day,new DatePicker.OnDateChangedListener(){

        @Override
        public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            //获取year属性,必须是MainActivity.this.year获取,因为监听是内部类
            MainActivity.this.month=month;
            MainActivity.this.day=day;
            showDate(year,month,day,hour,minute);
        }
    });

MainActivity.this.year 这个语句在这里的作用是什么?搞不懂,求大神指教!谢谢了!

解决方案

你在MainActivity这个类中有month这个变量,而在onDateChanged方法的参数中也有这个变量,根据就近原则,在onDateChanged写的month变量就是表示onDateChanged方法参数中的变量,一定要表示MainActivity中的month变量,就必须写全名,MainActivity.month或者MainActivity.this.month或者this.month(onDateChanged方法所属的类是MainActivity,因此this在这里就表示MainActivity)。
完整的,这句的意思就是将onDateChanged方法内的month变量值赋给MainActivity类内的month变量

解决方案二:

MainActivity.this表示这个类的上下文对象。
MainActivity.this.xxx表示类中定义的全局变量。

解决方案三:

通过MainActivity.this获取上下文,然后.year调用全局变量中的year来接收局部变量的year的值

解决方案四:

如楼上所说 当前的year

解决方案五:

是不是这个类里有这个变量呀?

解决方案六:

this代表当前类的引用,因为是在匿名内部类里面,如果直接写this,是代表这个匿名内部类的引用(就是实现DateChangedListener的匿名内部类),加上当前类名表示指定类名的当前对象的引用

解决方案七:

[this]是什么?
C#中this的作用是什么
getApplication()、getApplicationContext()、getBaseContext()、MainActivity.this、this、getContext()之间的区别

时间: 2024-08-03 17:10:59

android 布局-MainActivity.this.year的作用是什么?的相关文章

android布局中用到dimension,这样的作用是什么?好处是?

问题描述 android布局中用到dimension,这样的作用是什么?好处是? xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom=&

Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)

  [Android布局学习系列]   1.Android 布局学习之--Layout(布局)详解一   2.Android 布局学习之--Layout(布局)详解二(常见布局和布局参数)   3.Android 布局学习之--LinearLayout的layout_weight属性   4.Android 布局学习之--LinearLayout属性baselineAligned的作用及baseline      Layout Parameters(布局参数):            在XML文

android listview中超链接不起作用

问题描述 android listview中超链接不起作用 今天看网上listview中实现超链接,自己做了下,超链接没反应,item点击事件也没反应,去掉listview时超链接正常,这是怎么回事?附上代码. @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub webViewItem webViewItem = n

Android布局技巧之创建可重用的UI组件_Android

Android平台提供了大量的UI构件,你可以将这些小的视觉块(构件)搭建在一起,呈现给用户复杂且有用的画面.然而,应用程序有时需要一些高级的视觉组件.为了满足这一需求,并且能高效的实现,你可以把多个标准的构件结合起来成为一个单独的.可重用的组件. 例如,你可以创建一个可重用的组件包含一个进度条和一个取消按钮,一个Panel包含两个按钮(确定和取消动作),一个Panel包含图标.标题和描述等等.简单的,你可以通过书写一个自定义的View来创建一个UI组件,但更简单的方式是仅使用XML来实现. 在

Android布局学习——android:gravity和android:layout_gravity的区别

[Android布局学习系列]   1.Android 布局学习之--Layout(布局)详解一   2.Android 布局学习之--Layout(布局)详解二(常见布局和布局参数)   3.Android 布局学习之--LinearLayout的layout_weight属性   4.Android 布局学习之--LinearLayout属性baselineAligned的作用及baseline   1.分别是什么?    android:gravity :        定义了一个对象在X

Android布局技巧之创建可重用的UI组件

Android平台提供了大量的UI构件,你可以将这些小的视觉块(构件)搭建在一起,呈现给用户复杂且有用的画面.然而,应用程序有时需要一些高级的视觉组件.为了满足这一需求,并且能高效的实现,你可以把多个标准的构件结合起来成为一个单独的.可重用的组件. 例如,你可以创建一个可重用的组件包含一个进度条和一个取消按钮,一个Panel包含两个按钮(确定和取消动作),一个Panel包含图标.标题和描述等等.简单的,你可以通过书写一个自定义的View来创建一个UI组件,但更简单的方式是仅使用XML来实现. 在

在android布局中测试能自动化点击按钮吗?

问题描述 在android布局中测试能自动化点击按钮吗? 我想测试程序的功能,想自动化大多数的用户交互.其中一个是按钮(一个需要用户交互的地方). 是否有可能自动化?是否违背安全呢? 解决方案 给你推荐一个文档,关于简单的Android自动化UI测试.Automated Unit Testing the Android UI 还有button.performClick();

Android布局优化

categories: Android 在Android开发中,我们常用的布局方式主要有LinearLayout.RelativeLayout.FrameLayout等,通过这 些布局我们可以实现各种各样的界面.与此同时,如何正确.高效的使用这些布局方式来组织UI控件,是我们 构建优秀Android App的主要前提之一.本篇内容就主要围绕Android布局优化来讨论在日常开发中我们使用常 用布局需要注意的一些方面,同时介绍一款SDK自带的UI性能检测工具HierarchyViewer. 布局原

Android 布局(Layout)指南

Android 布局(Layout)指南 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. Android 官方文档 布局 相关资源链接汇总如下: android-sdk-macosx-4.4.2