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

android中this

發布時間: 2023-05-16 00:20:46

⑴ 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環境

⑵ 關於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概念的,這個概念非常重要,慢慢體納知鍵會吧。

⑶ android中這里的this啥意思

當前的這個activity

⑷ 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);
}
}
//……
}

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

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

⑹ Android this會不會為空

不會,this是代表這個activity類,只要activity實例化了,就不會為空的。如果包裝在方法類,需要類名點this調用才不會報錯。

⑺ 關於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概念的,這個概念非常重要,慢慢體會吧。

⑻ 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
所以可以指當前的上下文。

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

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

⑽ Android中怎麼用this

Android 中的this主要有三種用法:
1、表示對當前對象的引用!
2、表示用類的成員變數,而非函數參數,注意在函數參數和成員變數同名是進行區分!其實這是第一種用法的特例,比較常用,所以那出來強調一下。
3、用於在構造方法中引用滿足指定參數類型的構造器(其實也就是構造方法)。但是這里必須非常注意:只能引用一個構造方法且必須位於開始!
還有就是注意:this不能用在static方法中!所以甚至有人給static方法的定義就是:沒有this的方法!雖然誇張,但是卻充分說明this不能在static方法中使用。

給個詳細解釋的鏈接:
http://android.tgbus.com/Android/tutorial/201107/358217.shtml

(由於這是Android開發相關的基礎,所以我就不寫我理解的「this」,畢竟你還在學Android基礎,待以後你對Android學習更近一步時,你就會有自己的理解了。所以呢,為了給提問者你正確標準的答案,這里就用鏈接的知識解答你了,望見諒!TKS!)

熱點內容
工業伺服器機箱怎麼樣 發布:2025-02-14 00:29:15 瀏覽:85
英朗壓縮機 發布:2025-02-14 00:29:12 瀏覽:677
java門面模式 發布:2025-02-14 00:29:09 瀏覽:916
java旋轉 發布:2025-02-14 00:22:49 瀏覽:103
存儲虛擬化方案 發布:2025-02-14 00:21:15 瀏覽:695
ubuntupython3安裝 發布:2025-02-14 00:14:45 瀏覽:661
和平精英怎麼更新比較快安卓 發布:2025-02-14 00:14:35 瀏覽:974
怎麼改密碼鎖 發布:2025-02-13 23:47:39 瀏覽:852
androidbitmap獲取大小 發布:2025-02-13 23:47:38 瀏覽:559
怎麼把升級鴻蒙系統變回安卓 發布:2025-02-13 23:36:07 瀏覽:595