gpt4 book ai didi

ios - 表单元格中的RowSelected编辑文本字段

转载 作者:行者123 更新时间:2023-12-01 19:01:44 25 4
gpt4 key购买 nike

我有一个带有自定义单元格的TableView,在单元格中有一个标签和一个文本字段。选择行后,我想聚焦文本框。

任何人都知道如何通过以下代码解决此问题:

public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
{
//EDIT TEXTFIELD FROM SELECTED ROW
}

我的文本字段确实在自定义单元格类中。
我尝试了这个:
CustomCell cell = tableView.CellAt (indexPath) as CustomCell;
cell.textField.BecomeFirstResponder();

但是从未找到textField。

这是我的CustomCell类:
using System;
using System.Drawing;
using MonoTouch.Foundation;
using MonoTouch.UIKit;

namespace Forms.iOS
{
public class CustomCell : UITableViewCell
{

UITextField textField;
UILabel label;

public CustomCell (NSString cellId) : base (UITableViewCellStyle.Value1, cellId)
{
textField = new UITextField ();
label = new UILabel ();
ContentView.Add (label);
ContentView.Add (textField);
}

public void UpdateCell (string textFieldValue, string labelValue)
{
DetailTextLabel.Text = "Dit is echt nutteloze tekst maar geen idee waarvoor ik dit hier nu neer zet maar zodat het in ieder geval te veel is.";
textField.Placeholder = textFieldValue;
TextLabel.Text = labelValue;
}

public override void LayoutSubviews ()
{
base.LayoutSubviews ();

DetailTextLabel.Hidden = true;
RectangleF detailFrame = DetailTextLabel.Frame;
textField.Frame = detailFrame;
}

}
}

最佳答案

我相信您在选择行时需要使文本字段成为第一响应者。

yourUITextField.BecomeFirstResponder();

如果您的UITextField是某种形式的自定义单元格类的成员,则可以尝试使用CellAt在该位置抓取该单元格,将其转换为自定义类并以这种方式进行访问。
public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
{
CustomUITableViewCellClass customCell = tableView.CellAt(indexPath) as CustomUITableViewCellClass;

if (customCell !=null)
{
customCell.yourUITextField.BecomeFirstResponder();
}
else
{
// Cell at indexPath cannot be cast to CustomUITableViewCellClass
}
}

关于ios - 表单元格中的RowSelected编辑文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22384711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com