уменьшение размера раздела в tableview

#iphone #objective-c #uitableview

#iPhone #objective-c #uitableview

Вопрос:

я новичок в разработке iphone, я хотел уменьшить размер раздела в представлении сгруппированной таблицы, то есть уменьшить ширину раздела. как это можно реализовать заранее спасибо

Комментарии:

1. вы пробовали уменьшить ширину всего tableview?

2. @Nick Weaver: На самом деле, я и этого не знал. я хочу сделать это как для раздела, так и для табличного представления

3. Вы можете задать размер всего TableView с помощью myTableView.frame = CGRectMake(x,y,width,height); . Вы должны скорректировать значения для CGRectMake. Раздел должен соответственно уменьшиться. Пожалуйста, попробуйте это и скажите нам, соответствует ли это вашим потребностям.

4. @Nick Weave: да, я проверю и расскажу тебе..

5. @Nick Weave: привет, я хочу изменить ширину строки в табличном представлении, а не размер табличного представления..

Ответ №1:

 - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    return kHeightForHeaderInSection;
}   


 - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
        // wrapperView - by default has the width of the table, you can change the height
        // with the heightForHeaderInSection method
        UIView *aView = [[[UIView alloc] initWithFrame:CGRectZero] autorelease];

        // your real section view: a label, a uiview, whatever
        CGRect myFrame; // create your own frame
        myFrame.origin = CGPointMake(10, 0);
        myFrame.size = CGSizeMake(tableView.bounds.size.width-10,kHeightForHeaderInSection); 
        UILabel *label = [[[UILabel alloc] initWithFrame:myFrame] autorelease];
        label.text = @"myText"
        [aView addSubview:label];

        return aView;
    }
  

Комментарии:

1. в вашем делегате TableView вам необходимо реализовать описанный выше метод. viewForHeaderInSection возвращает view (назовем MyView) с высотой, равной значению, возвращаемому heightForHeaderInSection, и шириной, равной ширине TableView. На этом этапе вы можете просто создать и добавить свой целевой вид (т. Е. метку) с вашим собственным определенным фреймом и добавить его в MyView. Другим подходом было бы создание подкласса методов UILabel: — textRectForBounds: limitedToNumberOfLines: и -drawTextInRect:.

Ответ №2:

Привет, добавьте этот метод UITableViewDelegate

 - (CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    return height;
}
  

Ответ №3:

это очень простое решение…

 @interface MyController : UIViewController <UITableViewDelegate, UITableViewDataSource>
{
IBOutlet UITableview *myTableview;
  

просто щелкните правой кнопкой мыши на «UITableViewDelegate» и «UITableViewDataSource»

n внедрите все делегаты …. вы найдете все типы настроек там….если вы хотите изменить или отрегулировать высоту или ширину раздела или строки … или сколько разделов или строк в разделе вы хотите …. это просто n вызывается автоматически…. с уважением