5

XMLファイルからコンテンツビューを設定するアクティビティがあるとします。

JavaコードにボタンacceptButtonがあるとしましょう。

acceptButton =(Button)findViewById(R.id.acceptBtn);

上記のコードでは、Java名とXMLIDが異なります。ウィジェットに名前を付けるための「ベストプラクティス」または標準はありますか?たとえば、XML IDもacceptBtnではなくacceptButtonと呼ぶ必要がありますか?些細なことのように思えますが、Androidの名前とXML IDにまったく異なる名前を付けると、他の人が何をするのかわからなくなります。

4

4 に答える 4

4

xmlファイルのリソースに名前を付けることについてのGoogleからの推奨事項はありません。また、コントリビューターのコードスタイルガイドラインを確認すると、それについての言及がないため、SDKを調べて、Googleが識別子の命名に一貫性がないことを確認することをお勧めします。

SDK全体で、次のような規則を見つけることができます。

mHeaderText = (TextView) view.findViewById(R.id.headerText);

mHeaderText = (TextView) view.findViewById(R.id.header_text);

mHeaderText = (TextView) view.findViewById(R.id.HeaderText);

私がお勧めするのは、プロジェクトごとに一貫性を保つことです。1つの命名規則を決定し、それをプロジェクト全体で使用します。

于 2012-08-16T06:50:24.563 に答える
0

Java名とXMLIDが同じである必要はありません。そして、Googleが提供するそのような命名基準はないと思います。しかし、両方が同じである場合、それは非常に良い習慣のようです。それらを同じに保つことで、複数のコントロールがある場合にのみ、名前でコントロールを簡単に識別できます。

もう1つの方法は、Java名とXML IDの命名スタイルを定義し、すべてのコントロールで同じようにすることができます。ただし、開発者またはプロジェクト固有です。

于 2012-08-16T04:12:42.210 に答える
0

Niravが言ったように、これは必須ではありませんが、idとVariableに同じ名前を付けることは、私が常に行う良い習慣です。これにより、xmlのIdとコードの変数の異なる名前を覚えておく必要がなくなり、xmlでコードに定義した後でコピーして貼り付けるだけで時間を節約できます。

于 2012-08-16T04:17:22.673 に答える
0

私はそれをJavaの慣習にもっと簡潔に解釈します:クラスを指す「AcceptBtn」、インスタンスを指す「acceptBtn」、「accept_btn -その他。「id」はインスタンスに似ており、明らかにクラスではありません。少なくとも他の人。しかし、私はそれをインスタンスとして好むでしょう。

R.id.AcceptBtn // As a class.
R.id.acceptBtn // As an instance.
R.id.accept_btn // Other cases.

また、Steve McConnelの「CodeComplete」によると、 acceptBtnはacceptButtonとして記述される方が望ましいです。読みやすく、書きにくいですが、コードを書くよりも読むことが多いです。したがって、読み取り可能なコードはより多くの時間を節約します。

于 2018-01-16T04:24:23.567 に答える