2011-06-26 19 views
1

私はAndroidプログラミングの初心者で、本のコードに従うときに立ち往生します。私は別のスレッドをチェックしましたが、解決策を見つけることができませんでした。あなたが私を助けてくれることを願います。Android:findViewbyID undefined

マイコード:

karmind_test.java

package karmind.com.karmind_test; 

import android.app.Activity; 
import android.os.Bundle; 
import android.content.Intent; 
import android.view.View; 
import android.view.View.OnClickListener; 

public class Karmind_test extends Activity implements OnClickListener { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main);  

    // Set up click listeners for all the buttons 
    View about_button = findViewbyID(R.id.about_button); 
    about_button.setOnClickListener(this); 

    View exit_button = findViewbyID(R.id.exit_button); 
    exit_button.setOnClickListener(this); 

    } 

    public void onClick(View v) { 
     switch (v.getId()) { 
     case R.id.about_button: 
      Intent i = new Intent(this, About.class); 
      startActivity(i); 
      break; 
     // More buttons here 
     } 
    } 
} 

main.xml

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
     android:background="@color/background" 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:padding="30dip"> 
    <LinearLayout 
    android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center"> 
    <TextView 
    android:text="@string/menu" 
    android:textSize="24.5sp" 
    android:layout_gravity="center" 
    android:layout_marginBottom="25dip" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"/> 
    <Button 
     android:id= "@+id/about_button" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/about"/> 
    <Button 
     android:id= "@+id/exit_button" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/exit"/> 
    <TextView 
    android:text="@string/copyright" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"/> 
    </LinearLayout> 
</LinearLayout> 

私は二回だエラー:

方法findViewbyID(int)がタイプKarmind_testために私を助けるため

おかげで定義されていません。

答えて

8

Javaは大文字と小文字を区別します。メソッド名はfindViewByIdであり、findViewByIDではありません。

+0

それと、ビューをボタンにキャストする必要があります。 –

+2

ボタンオブジェクトを作成したい場合は、それをキャストしないで 'View'の代わりに' Button'にしてください。 'View'で十分なら、キャストは不要です – Nanne

+0

もう一つの素晴らしいアイデアはEclipseの自動塗りつぶし機能を使用しています:) ctrl +スペースバーを押してコードを自動完成します。例えばfindviewとタイプしてctrlとspaceを押すと、全行が書かれます。幸運 –