私はこれを見つけました 。なんとも複雑です。
チュートリアル
Android のサポートでは、絶対的なレイアウトはなくなりました。setX メソッドが欲しいだけです。FrameLayout が最適なオプションです。も見てください:
スタックオーバーフローの答え
FrameLayout を使用すると、 absolute と同様の位置と寸法を設定できます。さらに深く行きたい場合は、次の方法を使用する必要があります。
// x と y には onCreate を使用できます
// 幅と高さを設定するための最良の方法 - post を使用 // post メソッドは、UI の準備ができていることを意味します
VEIW_MAIN = (ViewGroup) findViewById(R.id.activity_main);
VEIW_MAIN.post(new Runnable() {
@Override
public void run() {
LayoutParams paraBigText = BigText.getLayoutParams();
Double d24 = 200.0;
paraBigText.width = d24.intValue();
BigText.setLayoutParams(paraBigText);
BigText.setGravity( Gravity.CENTER_HORIZONTAL);
}
});
...
ViewTreeObserver vto = SOME_ELEMENT.getViewTreeObserver();
vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener()
{
public boolean onPreDraw() {
// changes here
return true;
}
});
...
修正が必要な場合は、これを使用してください:
if (EKRAN.WIDTH() <= 480)
{
FIX_FOR_480_WIDTH();
}
else if (EKRAN.WIDTH() == 540) {
FIX_FOR_540_WIDTH();
}
else if (EKRAN.WIDTH() == 720) {
FIX_FOR_720_WIDTH();
}
else if (EKRAN.WIDTH() == 1080) {
FIX_FOR_1080_WIDTH();
}
...
void FIX_FOR_540_WIDTH()
{
System.out.println("FIX FUNCTION FOR 540 low width !!!!!!!");
SOMEELEMENT.setY( 0.865f * EKRAN.HEIGHT() );
}
...
Copy SCREEN class from :
パーセントで位置を設定 - Android DisplayMetrics
他の方法では、完全なカスタムオーダーが本当に必要な場合は、canvas2d を使用して独自の独自の UI を作成できます ...