2010-12-01 13 views
5

MonoTouch.Dialog DialogViewControllerの位置を設定する方法はありますか?私はDialogViewControllerをサブクラス化し、上部にUIToolbarを追加しました。そして、テーブルビューを対応するピクセルにシフトしたいと思っています。MonoTouch.Dialogの設定UITableViewの位置は?

public class MyViewController : DialogViewController 
{ 
    UIToolbar toolbar; 

    public SessionsListViewController (RootElement rootElement) : base(rootElement) 
    { 
     this.toolbar = new UIToolbar(new RectangleF(0,0,768,44)); 
     this.toolbar.Items = new UIBarButtonItem[0]; 
     this.Add(toolbar); 
    } 
} 
+0

http://stackoverflow.com/questions/9763196/monotouch-dialog-add -a-dialog-the-the-dialogの下にあるツールバー 私はこれをテストしてくれました。 – Felix

答えて

1

MonoTouch.DialogでTableViewの位置を決して変更できませんでした。ライブラリの問題ではありませんが、TableViewControllerの動作はMT.Dialogによって継承されています。

TableViewControllerクラスは、TableViewの位置を自動的に管理することになっています。その回避策はありません。 Miguel.de.icazaのように別の位置でTableViewを作成したとしても、TableViewControllerはWillAppearメソッド中にTableViewを再配置します。

MT.Dialogを使用しない場合、aoundをこのように扱う最良の方法は、たとえば画面の半分にテーブルを置くことはTableViewControllerを削除し、単にTableViewオブジェクトでUIViewControllerを使用することです。デリゲートとデータソースをTableViewに引き渡すことができますので、TableViewの自動配置だけが効果的です。

私はMT.DialogをUITableViewControllerの代わりにUIViewControllerから継承するように変更しようとしましたが、それは多くの問題を引き起こし、決して完了できませんでした。いつか私はそれをやるつもりです。

私はこれについて間違っていると聞きたいです!

-1

だけMyViewControllerにMakeTableViewメソッドをオーバーライドし、デフォルトの実装は次のとおりです。

return new UITableView (bounds, style) 

だから、あなたがしなければならないすべてが合格範囲を変更です。

+1

Miguelに感謝します。私は、以下の両方の方法を試してみました。テーブルビューは位置をまったく変更していません。私はブレークポイントを打っているので、呼び出されていることは分かっていますが、どの値を渡しても、テーブルは動いていません。 パブリックオーバーライドUITableView MakeTableView(RectangleF bounds、UITableViewStyleスタイル) { var newBounds = new RectangleF(500、500、10、10); // return base.MakeTableView(newBounds、style); 新しいUITableView(newBounds、style)を返します。 } –

+1

+1。この提案は機能しません - 効果はありません。 – tomfanning

1

同様の問題を回避するために、DialogViewControllerの派生チェーンを変更してUIViewControllerを継承し、直接UITableViewを作成しました。これにより私は背景としてビットマップを使用することができました。これを実行する唯一の方法は、少しでも物事を変えることです。これをソースツリーにチェックし、他のアップデートやコードのクリーンアップを計画していますが、代わりに多くのインターフェースをクリーニングする必要があります

+1

ケニー、あなたはこの作品を完成させましたか? MonoTouch.DialogにUIToolbarを追加するより良い方法がない限り、私が使うことができるものとまったく同じように聞こえる... –

関連する問題