ドロップダウンボタンをクリックしたときにリストビューのようなドロップダウンリストを作成し、リストにコンテンツを作成します。次に、選択したコンテンツはラベルのテキストになり、誰でも助けてくれます。色々ありがとう。
3943 次
1 に答える
1
ポップオーバーを使用してリストを表示できます。ポップオーバーでは、テーブルビューを作成してアイテムのリストを表示できます。ユーザーがオプションを選択すると、didSelectRowAtIndexPath が呼び出され、このメソッドから選択した値を送信してラベルに表示できます。
ドロップダウンを表示する mainviewcontroller のコード。
if (m_OptionController !=nil)
{
[m_OptionController release]; m_OptionController = nil;
}
m_OptionController=[[OptionViewController alloc]init];
[m_OptionController setTarget:self andSelector:@selector(displaySelectedOption:)];
if(m_pPopOverController)
{
[m_pPopOverController dismissPopoverAnimated:YES];
[m_pPopOverController release];
m_pPopOverController=nil;
}
m_pPopOverController=[[UIPopoverController alloc]initWithContentViewController:m_OptionController];
[m_pPopOverController setPopoverContentSize:CGSizeMake(thePopOverFrame.size.width, thePopOverFrame.size.height) animated:NO];
[m_pPopOverController presentPopoverFromRect:CGRectMake(theButton.frame.origin.x,0,40,40) inView:self
permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
OptionViewController は、UITableView.Populate UITableView にデータ (オプションのリスト) を含む UIViewController です。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if ([m_Target respondsToSelector:m_Selector]) {
[m_Target performSelector:m_Selector withObject:nil];
}
}
このメソッドを呼び出してターゲットを設定することを忘れないでください。ユーザーがオプションを選択すると、選択した値が必要な場所で mainviewcontroller の対応するメソッドが呼び出されます。
- (void)setTarget:(id)inTarget andSelector:(SEL)inSelector
{
m_Target = inTarget;
m_Selector = inSelector;
}
于 2012-06-04T10:45:27.600 に答える