を追加したUIViewを削除するには、UIImageView
を初期化して呼び出します。 後でこのビューを削除します。私のコードは以下の通りです。次のイベントが実行されると、
self.myView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 10, 320, 460)];
[myView setBackgroundColor:[UIColor whiteColor]];
self.myView.backgroundColor = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"someImage.png"]];
[self.tableView addSubview:self.myView];
後で、私はビューを削除し、削除するコードは次のとおりです。
[self.tableView bringSubviewToFront:self.myView];
[self.myView setHidden:YES];
[self.myView removeFromSuperview];
私が抱えている問題は、私がtableviewに追加したビューが削除されないということです。私はなぜこれが邪魔であるのか、それを解決するプログラム的な解決策を知る必要があります。
注:私はデバッグを行い、コードの削除部分が実行されますが、何も削除されません。あなたはこのような振る舞いは、バックグラウンドスレッドからのUIKitオブジェクト(のようなUIView
複数可)を変更している原因となることができる唯一の[self.myView removeFromSuperview];
hidden = YESを設定しないと問題は残りますか? – bryanmac
はい、何も変わりません – sharon
UIViewの複数のインスタンスをテーブルに追加しましたか?削除した後、テーブルビューのサブビューを印刷して、どの子ビューが残っているかを確認します。 – colbadhombre