2

さて、私は個人的な使用のためにカスタマイズしようとしているオープンソースプロジェクトをダウンロードしました(それが素晴らしいプロジェクトになる場合を除いて、誰が知っていますか)が、どちらの場合でも私はいくつかの問題を抱えています。

出発点から、progmaticメソッドを使用してUI要素を作成するのはかなり難しいと感じていますが、そこに良いチュートリアルを見つけることができません(誰かが何か提案があればそれは大いにありがたいです!)

だから、おそらく私の最善の方法は、変更したいビューを取得し、Interface Builderで再作成してから、前のビューに追加することであるという結論に達しました。ここでの問題は、私ができないように見えることです。これを行う方法について頭を悩ませてください。誰かがコードを見たい場合、私はそれを提供できますが、それはRemotePadオープンソースプロジェクト(簡単にグーグル)に基づいており、TapView要素を置き換えることを検討しています-本当に私がする必要があるのは、3つのマウスの下に4番目のボタンを追加することですボタンが、それは私を失っただけです。

私が本当に求めているのは、この4番目のボタンを追加するための最善の方法は何だと思いますか?理想的には、ボタンは「スキン可能」である必要があります。つまり、強調表示モードを適用できる画像の形式である必要があります。

4

1 に答える 1

4

これは実際にはかなり簡単なはずです。

  1. まず、新しいボタン用のIBOutletを使用して、既存のView Controller(ボタンを追加するビューに関連付けられているもの)を設定する必要があります。したがって、次のようなものを追加します。
    @property(非アトミック、保持)IBOutlet UIButton * myFourthButton;
    
  2. 次に、InterfaceBuilderでnibファイルを作成します。空のIBファイルから始めて、ボタンを追加します。また、ファイルの所有者をViewControllerクラスのインスタンスに設定する必要があります。次に、ファイル所有者のmyFourthButtonアウトレットを新しいボタンに接続します。IBファイルを保存します。

  3. ここで、ViewControllerの作成時にこのNIBファイルをロードする方法が必要です。ビューコントローラのviewDidLoad:メソッドで次のコマンドを呼び出してこれを行うことをお勧めします。

    [[NSBundle mainBundle] loadNibNamed:@ "yourNibFile" owner:self options:nil];
    
  4. これで、NIBファイルのボタンがmyFourthButtonアウトレットに接続されているはずです。これで、ボタンをビューに追加して配置するだけです。以下では、それをViewControllerのメインビューに追加します。ただし、代わりに追加する必要のあるサブビューがある場合があります(元のビューの設定方法によって異なります)。繰り返しになりますが、このコードをviewDidLoadに配置します。既存のすべてのコードの後に​​プログラムでビューを設定します(または、そのコードが他の場所にある場合は別のメソッドで)。

    [self.view addSubview:myFourthButton];  
    
    CGRectフレーム=myFourthButton.frame;
    frame.origin.x = 100;
    frame.origin.y = 100;
    myFourthButton.frame = frame;
    

    タップイベントに実際に応答するためにボタンが必要な場合は、期待どおりにIBAction andInterfaceBuilderを使用してボタンをViewControllerに接続できます。

于 2010-07-21T19:35:42.773 に答える