當前位置:首頁 » 安卓系統 » android中this的用法

android中this的用法

發布時間: 2024-05-27 00:00:16

1. android中 this 指向的是 當前的Context 執行上下文

this指代的是當前類的調用,比如說
my(int
b,int
b){
this.a
=
a;
this.b
=b;
}
this.a和this.b是當前類的變數a和b,在android中如果是在Activity中調用的話,由於Context
是Activity的父類,所以Activity本身就是一個Context
所以可以指當前的上下文。

2. android中this.getContext()與getApplicationContext()的區別

1、this:代表當前,在Activity當中就是代表當前的Activity,換句話說就是Activity.this在Activity當中可以縮寫為this;
2、getApplicationContext():生命周期是整個應用,應用摧毀,它才摧毀。
3、在平時的開發中,有時候可能會需要一些全局數據,來讓應用中得所有Activity和View都能訪問到,大家在遇到這種情況時,可能首先會想到自己定義一個類,然後創建很多靜態成員,不過andorid已經提供了這種情況的解決方案:
在Android中,有一個名為Application的類,可以在Activity中使用getApplication(),方法來獲得,它是代表我們的應用程序的類,使用它可以獲得當前應用的主題,資源文件中的內容等,這個類更靈活的一個特性就是可以被繼承,來添加自己的全局屬性。

3. Android:類名.this.方法()是一種怎樣的形式呢

OnChildClickListener 中的this是指的new的OnChildClickListener 對象,想調用MainActivity實例的內容要指明是用的哪個實例的this。

this是在new之後的實例對象的引用別名。

4. 關於android開發(java開發)中this的問題

通俗講,this指本類,如:
public class Main extends Activity {
。。。
GridView gridview =(GridView) findViewById(R.id.gridview);
gridview.setAdapter(newImageAdapter(this));
。。。
}
代洞巧碼第二行的this指Main.this

Android很多控制項運行猛信是有條件的,就是所謂的運行環境,就是Context(上下文),Context就是一系列環境變數,控制項的運行是基於這些變數的。
我也是花很多時間才真正體會到this,Context概念的,這個概念非常重要,慢慢體納知鍵會吧。

5. android中的context和this的區別

在android中常常會遇到與context有關的內容,特寫下這篇blog,淺論一下context : 在語句 AlertDialog.Builder builder = new AlertDialog.Builder(this); 中,要求傳遞的 參數就是一個context,在這里我們傳入的是this,那麼這個this究竟指的是什麼東東呢? 這里的this指的是Activity.this,是這個語句所在的Activity的this,是這個Activity 的上下文。網上有很多朋友在這里傳入this.getApplicationContext(),這是不對的。 AlertDialog對象是依賴於一個View的,而View是和一個Activity對應的。 於是,這里涉及到一個生命周期的問題,this.getApplicationContext()取的是這個應 用程序的Context,Activity.this取的是這個Activity的Context,這兩者的生命周期是不同 的,前者的生命周期是整個應用,後者的生命周期只是它所在的Activity。而AlertDialog應 該是屬於一個Activity的,在Activity銷毀的時候它也就銷毀了,不會再存在;但是,如果傳 入this.getApplicationContext(),就表示它的生命周期是整個應用程序,這顯然超過了它 的生命周期了。 所以,在這里我們只能使用Activity的this

context指的上下文環境
this指的是本類的對象,
一般情況:有context但是不一定有this,有this一定有context環境

6. android 中 new button(this) ,new button(getApplicationContext)的主要區別和用法

我的想法是這樣的:this.getApplicationContext()取的是這個應用程序的Context,Activity.this取的是這個Activity的Context,這兩者的生命周期是不同的,前者的生命周期是整個應用,後者的生命周期只是它所在的Activity。

7. Android中this.*與*.this還有*.class的區別是什麼

這些是java的基礎知識.
首先this代表本類的一個引用,
this.*表示調用本類的某個方法,這個時候通常可以省略this;但在內部類中不能省略,否則編譯器會認為是內部類的引用,所以要在this前加上類名
*.this表示本類的引用,通常前面的*是用本類的名字表示,當然也可以省略,但是如果是在內部類中一定要加上類名;
*.class表示其他的類;
在android中通常用的最多的地方是intent.setClass(A.this,
B.class);

8. Android this問題

從Intenti=newIntent(this,Sang_h2.class)的原意看,應該指向上下文Context(如Activity,Service,Application等)。但這里是否使用正確要看方法onClick所在的類。

假如

{
//……
classmyListenerimplementsView.onClickListener{
publicvoidonClick(Viewv){
//這時this指向myListener,那麼正確的用法是
Intenti=newIntent(MyActivity.this,Sang_h2.class);
startActivity(i);
}
}
//……
}
熱點內容
用公司伺服器搭建網站 發布:2024-11-26 21:42:00 瀏覽:356
忘記密碼魅族手機如何清除數據 發布:2024-11-26 21:34:17 瀏覽:155
達內php視頻 發布:2024-11-26 21:32:09 瀏覽:555
編譯器分析 發布:2024-11-26 21:13:01 瀏覽:831
存儲過程execute 發布:2024-11-26 21:11:02 瀏覽:255
石器時代合成腳本 發布:2024-11-26 20:57:07 瀏覽:939
漏油器密碼怎麼改密碼 發布:2024-11-26 20:30:11 瀏覽:14
linux編碼命令 發布:2024-11-26 20:23:13 瀏覽:801
密碼加密工具 發布:2024-11-26 20:23:06 瀏覽:692
如何破解加密的wifi 發布:2024-11-26 20:10:29 瀏覽:431