次の属性を持つ XML ファイルがあります。
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/al_cs_layout1"
android:gravity="center_vertical">
<ImageView android:id="@+id/cs_track"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/fader_background5"
android:layout_marginLeft="0dp"
android:layout_marginTop="20dp" >
</ImageView>
...
ここに私のJavaコードがあります:
public void initialize(Context context)
{
Log.d("initialize (MySeekBar)","initialize");
setWillNotDraw(false);
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view1 = inflater.inflate(R.layout.custom_seekbar, this);
layout1 = (RelativeLayout)view1.findViewById(R.id.al_cs_layout1);
track = (ImageView)layout1.findViewById(R.id.cs_track);
thumb = (ImageView)layout1.findViewById(R.id.cs_thumb);
...
変数 marginTop = 20; を使用してトップを決定するカスタム シークバーに取り組んでいます。ただし、これは別のプログラマーによってはるかに古い電話で口頭で作成されました。20 は、XML で定義された余白の上部を表すと想定されていますが、ピクセルではなく dp を使用しています。R.id.cs_track の marginTop 属性を見つけるにはどうすればよいですか? 古い電話ではうまく機能しますが、同じ画面サイズの dp を持たない電話では、望ましくないオフセットが作成されます。