ImageViewのパディングを設定しようとしています。私のコードは以下の通りですandroid ImageView setPaddingは効果がありません
private void createEpisodeView() {
float scale = this.getResources().getDisplayMetrics().density;
int padding = (int) (PADDING * scale + 0.5f);
rlItemsRoot = (LinearLayout) findViewById(R.id.rl_items_root);
for (int i = 0; i < GameLevels.TOTAL_EPISODES; i++) {
ImageView iv = new ImageView(this);
iv.setPadding(padding, padding, padding, padding);
iv.setBackgroundResource(R.drawable.icon_small);
rlItemsRoot.addView(iv);
}
}
しかし、それは効果がありません。しかし、私はXMLでこれを設定するとうまく見えます。
パディングは、動的に設定するときにピクセルで表現されます.. xml rでpxまたはdipで同じ値を使用 –
私はdipをXMLで使用しています。ここではpixをDIPに変換しています。 5定数はintへの変換の影響を取り消すことです。すなわち0.7はintでは0ですが、0.5を追加するとそれは無効になります。 –