2013-03-23 75 views
1

我想運行MainActivity,它擴展了View但它沒有運行。我是否必須使用MainActivity extends Activity來運行應用程序,因爲我想在MainActivity類中使用draw()方法。我可以直接使用它,或者我必須使用View而不是Activity ?. 這裏是我的代碼Android以編程方式使用形狀

public class MainActivity extends View { 
    public MainActivity(Context context) { 
    super(context); 
} 

的main.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#000000" 
    android:gravity="center" 
    android:orientation="vertical" > 
</LinearLayout> 

回答

0

是的,您的主要活動(以及任何其他)必須擴展活動。 如果您想製作自己的自定義控件,只需將其寫入(擴展視圖或其某些下降圖),並將其與其他任何控件一起放入主佈局。 在您的自定義控件中,如果需要,可以重寫onDraw()方法。 看看文檔: Custom controls

+0

謝謝你的答案 – OmD 2013-03-23 10:53:08

0

您的活動應該擴展Actvity,你必須讓你的平局形象view它是類的一個對象,擴展View

如果您需要教程,請參閱this鏈接。這將使用Android中的視圖繪製餅圖。

我希望這對你有用。

+0

在你的教程中他們是沒有佈局文件 – OmD 2013-03-23 10:54:11

+0

它是完整的教程的朋友。嘗試一下。那麼你會意識到 – Gunaseelan 2013-03-24 13:43:31

0

嘗試類似:

class MyActivity extends Activity { 
    ... 
    @Override 
    protected void onCreate { 
     ... 
     setContentView(R.layout.main); 
     .... 
    } 
} 

setContentView後,您可以通過調用findViewById(<LinearLayout's id>)引用它。在您的佈局中,您可以放置​​您想要執行繪圖的視圖

+0

@部門謝謝你的信息 – OmD 2013-03-23 10:53:26