In viewDidLoad I add
[super viewDidLoad];
if ([[API sharedInstance] isAuthorized]) {
[self userInfo];
}
then
-(void)userInfo{
API* apiUser = [API sharedInstance];
//load the caption of the selected photo
[apiUser commandWithParams: [NSMutableDictionary dictionaryWithObjectsAndKeys:#"get_user_data", #"command", nil] onCompletion:^(NSDictionary *json) {
//got stream
NSArray* list = [json objectForKey:#"result"];
NSDictionary* userInfo = [list objectAtIndex:0];
name = [NSString stringWithFormat:#"%# %#",[userInfo objectForKey:#"name"], [userInfo objectForKey:#"surname"]];
}];
}
finally cell.textLabel.text and cell.textLabel.font got nothing, text is the same as in storyboard and font is default
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *CellIdentifier = [self.menuItems objectAtIndex:indexPath.row];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
if (indexPath.row == 0) {
if (name != nil) {
cell.textLabel.text = name;
}
cell.contentView.backgroundColor = [UIColor colorWithRed:0.8 green:0.0 blue:0.03 alpha:1.0];
UIFont *myfontTop = [ UIFont fontWithName:#"myFont" size:IS_PAD?17:11];
cell.detailTextLabel.font = myfontTop;
cell.textLabel.textColor = [UIColor blueColor];
} else {
UIFont *myfont = [ UIFont fontWithName:#"myFont" size:IS_PAD?17:11];
cell.contentView.backgroundColor = [UIColor grayColor];
cell.textLabel.font = myfont;
}
return cell;
}
Does anyone know how to resolve the problem?
Related
am getting the following error, cannot figure it out where it is. Please help me to find out the issue. TIA
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayM length]: unrecognized selector sent to instance 0x145ecca0'
*** First throw call stack:
- (void)viewDidLoad
{
[super viewDidLoad];
UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero];
label.backgroundColor = [UIColor clearColor];
label.font = [UIFont fontWithName:#"Helvetica neue" size:20.0];
//label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
//label.textAlignment = UITextAlignmentCenter;
label.textColor = [UIColor whiteColor]; // change this color
self.navigationItem.titleView = label;
label.text = #"My Details";
[label sizeToFit];
}
#pragma mark -
#pragma mark Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// Return the number of rows in the section.
return 30;
}
// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = #"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
cell.textLabel.font=[UIFont fontWithName:#"Helvetica neue" size:14.0];
cell.detailTextLabel.font=[UIFont fontWithName:#"Helvetica neue" size:13.0];
cell.textLabel.textColor=[UIColor colorWithRed:199.0/255.0 green:65.0/255.0 blue:69.0/255.0 alpha:1.0];
cell.selectionStyle = UITableViewCellSelectionStyleGray;
}
NSArray *keys = [myDict allKeys];
for(int i=0 ; i<[keys count]; i++ )
{
NSString *value=[myDict objectForKey:[keys objectAtIndex:i]];
if ([value isEqual: [NSNull null]]||[value length]==0) {
[myDict setValue:#"--" forKey:[keys objectAtIndex:i]];
}
}
if(indexPath.row==0)
{
cell.textLabel.text = #"Relationship";
cell.detailTextLabel.text=[myDict objectForKey:#"Relationship"];
}
if(indexPath.row==1)
{
cell.textLabel.text = #"Person Name";
cell.detailTextLabel.text=[myDict objectForKey:#"PersonName"];
}
if(indexPath.row==2)
{
cell.textLabel.text = #"Shopping";
cell.detailTextLabel.text=[myDict objectForKey:#"shopping"];
}
if(indexPath.row==3)
{
cell.textLabel.text = #"Quantity";
cell.detailTextLabel.text=[myDict objectForKey:#"Quantity"];
}
if(indexPath.row==4)
{
cell.textLabel.text = #"Pants";
cell.detailTextLabel.text=[myDict objectForKey:#"pants"];
}
if(indexPath.row==5)
{
cell.textLabel.text = #"Shirts";
cell.detailTextLabel.text=[myDict objectForKey:#"shirts"];
}
if(indexPath.row==6)
{
cell.textLabel.text = #"Other";
cell.detailTextLabel.text=[myDict objectForKey:#"other"];
}
if(indexPath.row==7)
{
cell.textLabel.text = #"Start Date";
NSString *str=[myDict objectForKey:#"startDate"];
NSString *str2= [str substringToIndex:10];
cell.detailTextLabel.text=str2;
}
if(indexPath.row==8)
{
cell.textLabel.text = #"End Date";
NSString *str=[myDict objectForKey:#"endDate"];
NSString *str2= [str substringToIndex:10];
cell.detailTextLabel.text=str2;
}
if(indexPath.row==9)
{
cell.textLabel.text = #"Address";
cell.detailTextLabel.text=[myDict objectForKey:#"address"];
}
if(indexPath.row==10)
{
cell.textLabel.text = #"Notes";
cell.detailTextLabel.text=[myDict objectForKey:#"Notes"];
}
if(indexPath.row==11)
{
cell.textLabel.text = #"Bill";
cell.detailTextLabel.text=[myDict objectForKey:#"bill"];
}
if(indexPath.row==12)
{
cell.textLabel.text = #"Grand Total";
cell.detailTextLabel.text=[myDict objectForKey:#"total"];
}
if(indexPath.row==13)
{
cell.textLabel.text = #"Signature";
cell.detailTextLabel.text=[myDict objectForKey:#"sign"];
}
return cell;
}
NSArray do not respond to length, but count.
Most probably in value you expect a NSString, but there is an array instead.
Something is wrong when you set the value.
Might be you are expecting something different and it having other type of values.May be you are expecting NSString and it is giving any other type.
Youc can use id data type so that it can be helpful. This solved for me.Hope for you also.
This:
[myDict objectForKey:[keys objectAtIndex:i]];
is returning an NSArray, not a NSString.
Im trying to add parse data into my table array and i get'NSRangeException', reason: '*** -[__NSArrayI objectAtIndex:]: index 1 beyond bounds [0 .. 0] any help on how to resolve this would be appreciated.
PFQuery *query31 = [PFQuery queryWithClassName:#"Salesman"];
[query31 whereKey:#"SalesNo" equalTo:self.tbl22];
// query31.cachePolicy = kPFCachePolicyCacheThenNetwork;
[query31 getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error) {
if (!object) {
NSLog(#"The getFirstObject request failed.");
} else {
self.salesman = [object objectForKey:#"Salesman"];
NSLog(#"salesStr is %#",self.salesman);
}
}];
tableData2 = [NSArray arrayWithObjects:t21, t22, t23, t24, t25, nil];
here is were i get the crash t22 = self salesman
if ([_formController isEqual: #"Leads"]) {
if ( ( ![t22 isEqual:[NSNull null]] ) && ( [self.tbl22 length] != 0 ) )
{t22 = self.salesman;
} else { t22 = #"None"; }
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if ([tableView isEqual:self.listTableView]) {
return [tableData count];
} else if ([tableView isEqual:self.listTableView2]) {
return [tableData count];
} else if ([tableView isEqual:self.newsTableView]) {
return 1;
}
return 0;
}
#pragma mark TableView Delegate Methods
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if ([tableView isEqual:self.listTableView]) {
static NSString *CellIdentifier = #"NewCell";
UITableViewCell *myCell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (myCell == nil) {
myCell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; }
//need to reload table (void)viewDidAppear to get fonts to change but its annoying
myCell.textLabel.text = [tableData4 objectAtIndex:indexPath.row];
myCell.textLabel.font = [UIFont systemFontOfSize:8.0];
[myCell.textLabel setTextColor:[UIColor darkGrayColor]];
myCell.detailTextLabel.text = [tableData objectAtIndex:indexPath.row];
myCell.detailTextLabel.font = [UIFont boldSystemFontOfSize:8.0];
[myCell.detailTextLabel setTextColor:[UIColor blackColor]];
return myCell;
}
else if ([tableView isEqual:self.listTableView2]) {
static NSString *CellIdentifier2 = #"NewCell2";
UITableViewCell *myCell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier2];
if (myCell == nil) {
myCell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier2]; }
//need to reload table (void)viewDidAppear to get fonts to change but its annoying
myCell.textLabel.text = [tableData3 objectAtIndex:indexPath.row];
myCell.textLabel.font = [UIFont systemFontOfSize:8.0];
[myCell.textLabel setTextColor:[UIColor darkGrayColor]];
myCell.detailTextLabel.text = [tableData2 objectAtIndex:indexPath.row];
myCell.detailTextLabel.font = [UIFont boldSystemFontOfSize:8.0];
[myCell.detailTextLabel setTextColor:[UIColor blackColor]];
//draw red vertical line
UIView *vertLine = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, myCell.frame.size.height)];
vertLine.backgroundColor = [UIColor redColor];
[myCell.contentView addSubview:vertLine];
return myCell;
}
else if ([tableView isEqual:self.newsTableView]) {
static NSString *CellIdentifier1 = #"detailCell";
CustomTableViewCell *myCell = (CustomTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier1 forIndexPath:indexPath];
if (myCell == nil) {
myCell = [[CustomTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier1]; }
//need to reload table (void)viewDidAppear to get fonts to change but its annoying
myCell.separatorInset = UIEdgeInsetsMake(0.0f, myCell.frame.size.width, 0.0f, 400.0f);
myCell.leadtitleLabel.text = self.lnewsTitle;
myCell.leadtitleLabel.numberOfLines = 0;
myCell.leadtitleLabel.font = [UIFont systemFontOfSize:12.0];
[myCell.leadtitleLabel setTextColor:[UIColor darkGrayColor]];
myCell.leadsubtitleLabel.text = #"Yahoo Finance 2 hrs ago";
myCell.leadsubtitleLabel.font = [UIFont systemFontOfSize:8.0];
[myCell.leadsubtitleLabel setTextColor:[UIColor grayColor]];
myCell.leadreadmore.text = #"Read more";
myCell.leadreadmore.font = [UIFont systemFontOfSize:8.0];
myCell.leadnews.text = comments;
myCell.leadnews.numberOfLines = 0;
myCell.leadnews.font = [UIFont boldSystemFontOfSize:8.0];
[myCell.leadnews setTextColor:[UIColor darkGrayColor]];
return myCell;
}
when i run log i get one result Salesman name
NSLog(#"salesStr is %#",self.salesman);
salesStr is Adam Monteleone
It means that you array is empty and you try to access the index 1 which is not able to get it. You better debug yourself.
And if you want to do the introspection on the NSString, you only need to use the length method to check. It will return false if your NSString is either nil or empty.
What I want to do here is set it so that if top3ArrayForSection.count-1 < 1, set the _results bool value of that respective section to NO, and so on. What's happening instead, is that _results is set to NO or YES for the entire table overall, so that I end up with a result like this:
When only the "xperia Z3 compact unlocked" section should say "no items found etc." because it has no cells, the other sections cells shouldn't.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
NSDictionary *currentSectionDictionary = _matchCenterArray[section];
NSArray *top3ArrayForSection = currentSectionDictionary[#"Top 3"];
if (top3ArrayForSection.count-1 < 1){
_results = NO;
_rowCount = 1;
}
else if(top3ArrayForSection.count-1 >= 1){
_results = YES;
_rowCount = top3ArrayForSection.count-1;
}
return _rowCount;
}
// Cell layout
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// Initialize cell
static NSString *CellIdentifier = #"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (!cell) {
// if no cell could be dequeued create a new one
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}
// No cell seperators = clean design
tableView.separatorColor = [UIColor clearColor];
if (_results == NO) {
// title of the item
cell.textLabel.text = #"No items found, but we'll keep a lookout for you!";
cell.textLabel.font = [UIFont boldSystemFontOfSize:12];
}
else if (_results == YES) {
// title of the item
cell.textLabel.text = _matchCenterArray[indexPath.section][#"Top 3"][indexPath.row+1][#"Title"];
cell.textLabel.font = [UIFont boldSystemFontOfSize:14];
// price of the item
cell.detailTextLabel.text = [NSString stringWithFormat:#"$%#", _matchCenterArray[indexPath.section][#"Top 3"][indexPath.row+1][#"Price"]];
cell.detailTextLabel.textColor = [UIColor colorWithRed:0/255.0f green:127/255.0f blue:31/255.0f alpha:1.0f];
// image of the item
NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:_matchCenterArray[indexPath.section][#"Top 3"][indexPath.row+1][#"Image URL"]]];
[[cell imageView] setImage:[UIImage imageWithData:imageData]];
}
return cell;
}
Your instance variable _results is one-dimensional. You could replace it with an NSArray and store the values individually, or you could change the logic in your code as such:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
NSDictionary *currentSectionDictionary = _matchCenterArray[section];
NSArray *top3ArrayForSection = currentSectionDictionary[#"Top 3"];
return (top3ArrayForSection.count-1 < 1) ? 1 : top3ArrayForSection.count-1;
}
// Cell layout
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// Initialize cell
static NSString *CellIdentifier = #"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (!cell) {
// if no cell could be dequeued create a new one
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}
// No cell seperators = clean design
tableView.separatorColor = [UIColor clearColor];
NSDictionary *currentSectionDictionary = _matchCenterArray[indexPath.section];
NSArray *top3ArrayForSection = currentSectionDictionary[#"Top 3"];
if (top3ArrayForSection.count-1 < 1) {
// title of the item
cell.textLabel.text = #"No items found, but we'll keep a lookout for you!";
cell.textLabel.font = [UIFont boldSystemFontOfSize:12];
}
else {
// title of the item
cell.textLabel.text = _matchCenterArray[indexPath.section][#"Top 3"][indexPath.row+1][#"Title"];
cell.textLabel.font = [UIFont boldSystemFontOfSize:14];
// price of the item
cell.detailTextLabel.text = [NSString stringWithFormat:#"$%#", _matchCenterArray[indexPath.section][#"Top 3"][indexPath.row+1][#"Price"]];
cell.detailTextLabel.textColor = [UIColor colorWithRed:0/255.0f green:127/255.0f blue:31/255.0f alpha:1.0f];
// image of the item
NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:_matchCenterArray[indexPath.section][#"Top 3"][indexPath.row+1][#"Image URL"]]];
[[cell imageView] setImage:[UIImage imageWithData:imageData]];
}
return cell;
}
As an example, I am trying to load a place name into my top UITableView, called myTableView. On the bottom, I am trying to display only "test2."
Naturally, all the data is being loaded into each UITableView. If I scroll to the bottom of myTableView2, the word "test2" IS shown, but I would like it to be the only thing there.
Is there a way, maybe by delegating different data sources, that I can separate the data I wan in each UITableView? I tried separating by if statements but quickly realized that had no effect.
It seems to me that I may need to set a separate datasource for myTableView2, but I am not sure how to do that...
Code is here:
- (void) connectionDidFinishLoading:(NSURLConnection *)connection
{
[self setString];
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:nil];
NSString *string1 = [dic objectForKey:#"name"];
for (NSDictionary *diction in dic)
{
[array addObject:string1];
}
[[self myTableView] reloadData];
NSString *string2 = [NSString stringWithFormat:#"test2"];
[array addObject:string2];
[[self myTableView2] reloadData];
[indicator stopAnimating];
indicator.hidden=YES;
[indicator removeFromSuperview];
ilabel.hidden = YES;
}
Solved with the code below. The key was to have two different arrays to load the respective data in, and display it at the very bottom where I am able to distinguish between UITableViews with IF statements:
- (void) connectionDidFinishLoading:(NSURLConnection *)connection
{
[self setString];
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:nil];
NSString *string1 = [dic objectForKey:#"name"];
NSString *string2 = [NSString stringWithFormat:#"test2"];
for (NSDictionary *diction in dic)
{
[array addObject:string1];
[array2 addObject:string2];
[[self myTableView] reloadData];
[[self myTableView2] reloadData];
}
[indicator stopAnimating];
indicator.hidden=YES;
[indicator removeFromSuperview];
ilabel.hidden = YES;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = #"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(!cell)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if (tableView == self.myTableView)
{
if ([[array objectAtIndex:indexPath.row] isKindOfClass:[NSNumber class]])
{
cell.textLabel.text = [[array objectAtIndex:indexPath.row] stringValue];
cell.textLabel.textColor = [UIColor whiteColor];
cell.textLabel.textAlignment = NSTextAlignmentCenter;
}
else
{
cell.textLabel.text = [array objectAtIndex:indexPath.row];
cell.textLabel.textColor = [UIColor whiteColor];
cell.textLabel.textAlignment = NSTextAlignmentCenter;
}
}
if (tableView == self.myTableView2)
{
if ([[array2 objectAtIndex:indexPath.row] isKindOfClass:[NSNumber class]])
{
cell.textLabel.text = [[array2 objectAtIndex:indexPath.row] stringValue];
cell.textLabel.textColor = [UIColor whiteColor];
cell.textLabel.textAlignment = NSTextAlignmentCenter;
}
else
{
cell.textLabel.text = [array2 objectAtIndex:indexPath.row];
cell.textLabel.textColor = [UIColor whiteColor];
cell.textLabel.textAlignment = NSTextAlignmentCenter;
}
}
return cell;
}
I am building a sectioned table, and it is showing up with what looks to be a section on top of a section. You can see on the image that there is a white line under each section.
The image
Here is the code I have to build the table:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return [alertList count];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return 1;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier;
if (self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft || self.interfaceOrientation == UIInterfaceOrientationLandscapeRight)
{
CellIdentifier = #"CellLandscape";
}
else
{
CellIdentifier = #"Cell";
}
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc]
initWithStyle:UITableViewCellStyleSubtitle
reuseIdentifier:CellIdentifier]
autorelease];
//cell.contentView.backgroundColor = [UIColor blackColor];
CGRect frame;
if (self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft || self.interfaceOrientation == UIInterfaceOrientationLandscapeRight)
{
frame.origin.x = 370;
//titleFrame.size.width = 320;
}
else
{
frame.origin.x = 220;
//titleFrame.size.width = 220;
}
frame.origin.y = 5;
frame.size.height = 15;
frame.size.width = 74;
UILabel *instLabel = [[UILabel alloc] initWithFrame:frame];
instLabel.tag = 1;
[cell.contentView addSubview:instLabel];
[instLabel release];
}
// Configure the cell.
Alert *p = [alertList objectAtIndex:indexPath.section];
UILabel *instLabel = (UILabel *) [cell.contentView viewWithTag:1];
instLabel.text = [p docDate];
instLabel.textColor = [UIColor blackColor];
[instLabel setFont:[UIFont fontWithName:#"Arial" size:12]];
NSString *path;
if ([[p subscription] isEqual:#"Y"])
{
path = [[NSBundle mainBundle] pathForResource:#"watchlist_on" ofType:#"png"];
}
else
{
path = [[NSBundle mainBundle] pathForResource:#"watchlist_off" ofType:#"png"];
}
//NSLog(#"%#", path);
cell.textLabel.textColor = [UIColor colorWithRed:.847 green:0 blue: 0 alpha: 1];
[cell.textLabel setFont:[UIFont boldSystemFontOfSize:13]];
cell.textLabel.text = [[NSString alloc] initWithFormat:#"%#", [p Name]];
cell.detailTextLabel.textColor = [UIColor blackColor];
[cell.detailTextLabel setFont:[UIFont fontWithName:#"Arial" size: 10]];
cell.detailTextLabel.text = [p docTitle];
cell.detailTextLabel.textColor = [UIColor blackColor];
[cell.detailTextLabel setFont:[UIFont fontWithName:#"Arial" size: 10]];
//cell.detailTextLabel.text = [p docDate];
//cell.imageView.image = [UIImage imageWithContentsOfFile:path];
cell.imageView.userInteractionEnabled = YES;
cell.imageView.userInteractionEnabled = YES;
//cell.imageView.image = [UIImage imageWithContentsOfFile:path];
/// [cell addSubview:imgView];
//cell.textLabel.text = [[NSString alloc] initWithFormat:#"%#, %# G: %#\nDOB: %# Inst: %#", [p lastName], [p firstName], [p gender],
// [p birthDate], [p inst]];
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
//only 1 alert at a time
//make doc list from alert object
Document *documentList1 = [[Document alloc] init];
self.documentList = documentList1;
[documentList1 setTitle:[p docTitle]];
[documentList1 setUniqueId:[p uniqueId]];
[documentList1 setDate:[p docDate]];
[documentList1 setRepoOID:[p repoOid]];
[documentArray addObject:documentList];
return cell;
}
Change the table view's separator style to either single line or none - you probably have it on single line etched.