2011-05-11 98 views
0

我有一個覆蓋TextView的類,但是如果我嘗試使用我的類或TextView的任何成員函數,我會在Eclipse中獲得一條錯誤消息,指出「無法對非靜態方法## MEMBER FUNCTION ##從類型View「。其中## MEMBER FUNCTION ##是我正在調用的方法,即setLayoutParams(ViewGroup.LayoutParams)。如果我查看建議對話框,只提供靜態方法。覆蓋類僅提供靜態方法

我也試過把我的課下來;

import android.widget.TextView; 

public class MyClass extends TextView { 

    public MyClass(Context context) { 
     super(context); 
    } 
} 

但我仍然得到相同的錯誤。

由於提前,
馬克

+0

什麼是引發錯誤的代碼。我對此感興趣。 – Aliostad 2011-05-11 22:48:09

+0

任何使用MyClass實例的成員方法。 – mfirth 2011-05-11 22:50:59

+0

您能帶來一個片段嗎? – Aliostad 2011-05-11 22:52:26

回答

1

你正在做這樣的事情TextView.method()調用textView.method(),其中的TextView是不是TextView的一個實例。該錯誤與您的帖子標題完全不符 - 這是相反的。

+0

我是一個數字,你當然是對的。這對我來說是正確的編碼到枯竭的地步。我一看到今天早上就知道。 我創建了一個類,然後是該類的一個實例,然後在使用它時使用了類名而不是實例名。 (這只是提供靜態方法,雖然標題說:) – mfirth 2011-05-12 17:53:41

0

確保你不打電話與TextView的方法。*在前面。

例如,不:

TextView.getWidth(); 

而是簡單地說:

getWidth();