2

iPhone アプリで作成したピッカーがあり、正常に動作しますが、ピッカーはオーバーレイの一部であるため、一部の値は、オーバーレイがどれくらい下と左に表示されるかについてハードコーディングされています。

そのため、同等の iPad バージョンを作成しようとすると、明らかなエラーが発生します。iPadのストーリーボードを開いてすべてを設定しましたが、当然、実行すると、巨大なiPad画面の中央と左側にuipickerviewが表示され、本来あるべき場所から離れて表示されます。

ピッカーのオーバーレイの位置をハードコーディングする代わりに、画面のサイズに関係なく、ピッカーのオーバーレイを自動的に中央に配置して画面の下部に配置する方法はありますか?

iPhone表示 iPad 表示

4

1 に答える 1

3

ピッカーをView Controllerのメインビュー(親だと思います)の下部に置き、ビューと同じ幅にしたいようです。これを試して...

CGRect viewFrame = self.view.frame;
CGRect pickerHeight = self.picker.frame.size.height;  // assume you have an outlet called picker
CGRect pickerFrame = CGRectMake(0.0, viewFrame.size.height-pickerHeight,
                         viewFrame.size.width, pickerHeight);
self.picker.frame = pickerFrame;
于 2013-03-27T22:48:04.227 に答える