画面を回転して前の状態を読み込むときに、このメソッドを使用します。
public void onConfigurationChanged(Configuration newConfig){
super.onConfigurationChanged(newConfig);
view1 = new DrawView(this);
setContentView(view1);
Bundle bundle = this.getIntent().getExtras();
onRestoreInstanceState(bundle);
getCoordinates();//NO WORKS WELL
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState){
//Here I set the values to images: colors, borders, etc ...
}
そして、AndroidManifestに次の行があります。
android:configChanges="orientation|screenSize"
getCoordinates()メソッドには、次のコードがあります。
public void getCoordinates(){
final int[] values = new int[2];
image.getLocationInWindow(values);
x = values[0];
y = values[1];
width = image.getWidth();
height = image.getHeight();
}
前のコードは私が持っているものとは正確には異なりますが、例として役立ちます。私の実際のコードはあまり変わりません。しかし、問題があります。画像間に線を引くには、画像の座標を知る必要があります。しかし、例(onConfigurationChanged(Configuration newConfig))でメソッドを起動すると、メソッドはまだすべての行を実行しておらず、メソッドは終了していないため、UIが完全に読み込まれません。したがって、座標でnullを取得します。座標を取得するためにユーザーインターフェイスが完全に充電されたら、メソッドgetCoordinates()を自動的に起動する方法がわかりません。誰かが私を助けることができますか?
ありがとう!!!!