こんにちは、ViewGroup の複製を取得する必要がありますが、ViewGroup をコピーして貼り付けることによって、まったく同じ場所ではありません。だから私はこれをやろうとしましたが、これが結果です:
public void ViewGroupCopy(ViewGroup source,int sourceOffset,ViewGroup destination,int destinationOffset){
for(int i=sourceOffset;i<source.getChildCount();i++){
View view = source.getChildAt(i);
source.removeView(view);
destination.addView(view, destinationOffset+i, view.getLayoutParams());
}
このコード ブロックでメソッドを使用しました。
Activity host = (Activity) this.getContext();
View contentView = host.findViewById(android.R.id.content).getRootView();
ViewGroup children = (ViewGroup) contentView;
ViewGroup oldChildren = (ViewGroup) contentView;
children.removeAllViews();
children.addView(new Preview(context));
ViewGroupCopy(oldChildren,0,children,1);
追加情報として、このクラスはビューを拡張します。
これを使用しようとすると、LogCat でこれが取得されます。
09-08 16:34:30.212: E/AndroidRuntime(10992): java.lang.RuntimeException: アクティビティ ComponentInfo を開始できません {com.example.worknwalk/com.example.worknwalk.Text}: java.lang.IndexOutOfBoundsException: インデックス=1カウント=0
誰か助けてくれませんか?ありがとう。