Androidフレームワークによってレンダリングされたビューを取得して、他のサイズに再スケーリングできますか?
ビューをスケーリングするには、API 11以降が必要です。方法は次のとおりです。
float scalingFactor = 0.5f; // scale down to half the size
view.setScaleX(scalingFactor);
view.setScaleY(scalingFactor);
あなたのXMLで
Android:scaleX="0.5"
Android:scaleY="0.5"
スケールの場合、ビューのwidth
とheight
をresizeして、areaおよびpositionanother view
。
あなたがそれがエリアと位置に影響を与えたくない場合、@Gadzair
と@Taiti
の回答を使用してください
private void resize(View view, float scaleX, float scaleY) {
ViewGroup.LayoutParams layoutParams = view.getLayoutParams();
layoutParams.width = (int) (view.getWidth() * scaleX);
layoutParams.height = (int) (view.getHeight() * scaleY);
view.setLayoutParams(layoutParams);
}
使用例
resize(view, 0.5f, 0.8f);