我正在构建一个类似于iPod.app的专辑浏览视图的UITableView:

我是在首次推出时从iPod库导入所有艺术家和专辑作品.将所有内容保存到CoreData并将其恢复为NSFetchedResultsController.我正在重用单元格标识符,在我的cellForRowAtIndexPath:方法中我有这个代码:
Artist *artist = [fetchedResultsController objectAtIndexPath:indexPath];
NSString *identifier = @"bigCell";
SWArtistViewCell *cell = (SWArtistViewCell*)[tableView dequeueReusableCellWithIdentifier:identifier];
if (cell == nil)
cell = [[[SWArtistViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier] autorelease];
cell.artistName = artist.artist_name;
cell.artworkImage = [UIImage imageWithData:artist.image];
[cell setNeedsDisplay];
return cell;
Run Code Online (Sandbox Code Playgroud)
我的SWArtistViewCell单元格实现了drawRect:绘制字符串和图像的方法:
[artworkImage drawInRect:CGRectMake(0,1,44,44)]
[artistName drawAtPoint:CGPointMake(54, 13) forWidth:200 withFont:[UIFont boldSystemFontOfSize:20] lineBreakMode:UILineBreakModeClip];
Run Code Online (Sandbox Code Playgroud)
滚动仍然不稳定,我只是无法弄清楚原因.像iPod和Twitter这样的应用程序有黄油平滑滚动,但他们都像我一样在单元格中绘制一些小图像.
我的所有观点都是不透明的.我错过了什么?
编辑:这是Shark所说的:
我不熟悉鲨鱼.任何指针与这些符号有什么关系?当我看到这些的痕迹时,它们都指向我的drawRect:方法,特别是UIImage绘图.

如果扼杀是文件读取,它会指向别的东西吗?这绝对是绘画吗?
编辑:保留图像
我已经按照pothibo的建议完成了,并将一个artworkImage方法添加到我的Artist类中,该类保留了使用imageWithData创建的图像:
- (UIImage*)artworkImage {
if(artworkImage == nil)
artworkImage = [[UIImage imageWithData:self.image] retain];
return artworkImage;
}
Run Code Online (Sandbox Code Playgroud)
所以现在我可以直接将保留的图像设置为我的TableViewCell,如下所示:
cell.artworkImage = artist.artworkImage;
Run Code Online (Sandbox Code Playgroud)
我还在我的tableViewCell类的setArtworkImage:方法中设置了setNeedsDisplay.滚动仍然是滞后的,Shark显示完全相同的结果.
基本上我想id从表中提取并id在另一个表中插入一些其他数据.所以algorythm:
foreach id in (select id from table)
{
insert into table2 values (id,etc,etc);
}
Run Code Online (Sandbox Code Playgroud)
如何使用SQL查询执行此功能?
我有一个简单的基本问题,我试图使用Insert语句将数据插入到数据库中,其他列值也使用TADOQuery组件.
由于代码已经由某人编写,我想在此处提供一些虚拟示例代码,以便您通过相应的步骤进行说明.
请注意,这是工作的罚款与TQuery组件,因为我更换TQuery与TADOQuery组件,我必须做同样的使用TADOQuery唯一的组件.
相同的代码应该适用于SQL Server以及Oracle数据库.
我尝试插入图像的列的数据类型VarBinary是SQL Server数据库中的类型.
使用TQuery将图像插入表中
使用创建图像TImage.
msBinImgStream := TMemoryStream.Create;
imgCustom := TImage.Create(self);
imgJpg := TJPEGImage.Create;
Run Code Online (Sandbox Code Playgroud)将图像转换为TJpegImage并保存到TMemoryStream.
imgJpg.Assign(imgCustom.Picture.Bitmap);
imgJpg.SaveToStream(msBinImgStream);
Run Code Online (Sandbox Code Playgroud)使用组件的SetBlobdata属性插入数据库TQuery.
sSql := 'INSERT INTO Table_Name(Column1, Column2, Column_Image) VALUES ( ''' + Value1 + ''', ''' + Value2 + ''', :pBlob)';
qryTQuery.SQL.Add(sSQL);
qryTQuery.ParamByName('pBlob').SetBlobData(msBinImgStream.Memory, msBinImgStream.Size);
qryTQuery.ExecSQL;
Run Code Online (Sandbox Code Playgroud)现在做同样的事情TADOQuery:
TMemoryStream.尝试使用图像将图像插入数据库LoadFromStream(stream, ftBlob) …
我来自Delphi世界,静态导入DLL函数非常简单.您需要做的就是指定函数名称和模块,如下所示:
function GetTickCount : DWORD; stdcall; external 'Kernel32.dll';
Run Code Online (Sandbox Code Playgroud)
为什么在C++中必须使用kernel32.lib才能导入函数?为什么我不能简单地告诉链接器像Delphi一样导入该函数?
我知道这对你们的manny来说听起来很无聊,但是从Delphi进入C++世界真的会让人感到困惑.
在我写的一个组件中,我想包括自动检测已注册的图像格式,但它是一个只有在禁用Use Debug DCU的编译器选项时才有效的解决方案.
我真正想知道的是这个解决方案的替代方案,它不涉及编译器选项依赖.
但就目前而言,我只想知道如何在运行时检查是否设置了Use Debug DCU的编译器选项.
在Delphi XE2中处理旧项目时,弹出的代码完成窗口CTRL- SPACE不会列出像Delphi 7这样的消息处理程序:

在上面的屏幕截图中,WM***缺少例程.这是为什么?
我正在使用Delphi XE2编写程序.我在画布上画了一些线条和形状.我想使用保存对话框将Canvas保存为图像文件.
所以我在表单上有一个保存按钮,通过单击它,它会打开保存对话框.我该如何继续保存画布?
我正在尝试为Android开发BLE应用程序.
我可以通过哪种方式检测和读取Android设备上的信标的UDID,Major,Minor?
我已经阅读了RadiusNetworks android-ibeacon-service,但我无法理解为什么:
major = (256 * (0xFF & paramArrayOfByte[(i + 20)]) +
(0xFF & paramArrayOfByte[(i + 21)]));
Run Code Online (Sandbox Code Playgroud)
这paramArrayOfByte是LeScanCallback byte[] scanRecord
我开始使用OO PHP,在查看了我从互联网上下载的各种类之后,我注意到这些类中的一些 - 但不是全部 - 具有相同名称的初始函数,例如
class MyClass{
function MyClass{
//function contents in here
}
function otherfunction{
//more stuff here
}
}
Run Code Online (Sandbox Code Playgroud)
这个初始功能是什么?它如何帮助编写课程?
delphi ×6
delphi-xe2 ×2
android ×1
c++ ×1
class ×1
firemonkey ×1
function ×1
ibeacon ×1
image ×1
iphone ×1
oop ×1
performance ×1
php ×1
scroll ×1
sql ×1
uitableview ×1