2012-01-13 12 views
4

私はAndroid開発の初心者ですが、プログラミング自体ではありません。とにかく、この質問はちょっとばかなことかもしれません。クラスとAndroidのアクティビティ

質問:AndroidアクティビティのすべてのクラスがUI要素に関連していますか?私は通常のオブジェクトを作成することができ、私は "定義する"方法とそれを "呼び出す"方法を理解していない "通常の" Javaクラスを持っていたい。

ご協力いただければ幸いです。ありがとう

+0

クラスを含むJavaソースファイルを作成します。デプロイされたら、他のJavaクラスと同じ「新しい」クラスをインスタンス化します。問題が何であるか分かりません。 IDEやビルド環境に問題がありますか? –

+0

私は自分自身の問題が何であるか分かりません。私はクラスを作成し、それを使ってUIを使ってオブジェクトを作成することに苦労しています。 – tyb

答えて

9

はい、通常のクラスを持つことはできますが、すべてがUI要素に関連しているわけではありません。これは通常のJavaとほとんど同じです。 Eclipseでは、イメージのように新しいクラスを作成し、1ページのウィザードに従うことができます。

Creating a new class in Eclipse

あなたは、以下のようないくつかのコード(私は例えば数ビットを追加しました)で終わるだろう:あなたはその後、通常通りの方法や他のものを構築することができます

package this.is.your.package; 

public class Person{ 

    private int age; 

    public void setAge(int _age) 
    { 
     age = _age; 
    } 

} 

。あなたのクラスをインスタンス化したりアクセスしたりするには、おそらくそれを取得するためのアクティビティのために公開する必要があります。しかし、これを行う方法は数多くありますが、上記の例では可能です。

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

     Person me = new Person(); 
     me.setAge(22); //feels old 
    } 

ご覧のとおり、これはすべて正常です。

+0

ありがとう、私は今それを得ると思う:) – tyb

+0

助けになることを嬉しく思う - 私はあなたに新しいです - あなたが答えがある場合、他のユーザーが見ることができるように、有用だった。また、便利なvitakotの答えに感謝します。 –

+0

もう1つ質問:java.util.RandomなどのJavaライブラリを使用することはできますか、それとも何か特定のアンドロイドライブラリが必要ですか?ありがとう – tyb

2

答えはいいです。すべてのアクティビティは通常のJavaクラスです。もちろん、Applicationのような多くの非UIクラスを持つことができます。あなたはヘルパーなどを持つことができます...あなたが正しく質問することを理解すれば、アクティビティにはユーザがいないという事実startActivityメソッドを呼び出すことによって間接的にしか作成することはできませんが、他の点では一般的なJavaクラスです。

+0

あなたの答えに感謝します! – tyb