目前我试图在我的iPhone应用程序中显示一个简单的表,我使用UITableViewCell的样式UITableViewCellStyleValue1(图像在左边,详细标签右对齐).单元格都具有默认高度(50.0f).在我将图像添加到单元格之前,我将图像的大小调整为40x40,这样它就不是单元格的总高度(我认为看起来很难看).
我这个代码执行此操作:
cell.imageView.image = [UIImage imageNamed:@"icon.png"];
cell.imageView.image = [RootViewController imageWithImage:cell.imageView.image scaledToSize:CGSizeMake(40, 40)];
Run Code Online (Sandbox Code Playgroud)
这一切都非常好,完美无瑕.但我想在iPhone 4上实现这一点(具有更高分辨率的屏幕).问题是,iPhone 4上的所有内容都没有问题,但图像看起来非常像素化.
原因在于屏幕上的所有内容都被夸大以扩展到新的分辨率,也包括图像,所以图像可能应该是80x80.但是当我将它们调整为80x80(原件为120x120)时,由于缩放的原因,它们看起来很大.
有没有办法让我的图像不是表格单元的完整高度,但我希望它们在iPhone 4上的分辨率更高.我应该为此创建一个全新的视图吗?
哎呀,在第一次回复后,我意识到我自己的书面功能缺失了:
+ (UIImage*)imageWithImage:(UIImage*)image scaledToSize:(CGSize)newSize
{
UIGraphicsBeginImageContextWithOptions(newSize, NO, [[UIScreen mainScreen] scale]);
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,在第一次回复之后,我尝试使用UIGraphicsBeginImageContextWithOptions方法来处理它,但不知何故,这会产生一个空图像.
我目前正在开发一个具有TabBarController的应用程序,每个选项卡都包含一个导航控制器.这样在每个选项卡上,我可以通过将viewcontroller推送到导航控制器来显示在视图上选择的行的详细信息.每个视图上面都有一个UINavigationItem.在这个导航项中,我放了一个按钮.
但是现在我想在单击UINavigationItem中的按钮时更改某个选项卡的viewcontroller,但是我要更改的视图(控制器)必须像该选项卡的根视图控制器一样.
所以我不想在导航控制器上推送另一个视图,而只是切换到该视图(在同一个选项卡中)并将其作为根视图控制器.
我找不到一个好方法来实现这一点,实际上让视图正常工作.当我切换视图时,它们要么不释放(这会很好,因为我想将内存使用量保持在最低限度).
解决这个问题的一种方法可能是我向TabBar控制器添加了更多选项卡,并在单击按钮时切换到右侧选项卡,但这是最后的选择.
不确定我是否正确描述了这一点,但我想知道最好的方法是做什么.我的偏好是有3个viewcontrollers并在它们之间切换.
我想从SQL存储过程中打印消息.
如果我使用SYNC选项执行cmd.ExecuteNonQuery连接会触发InfoMessage事件,但是当我使用ASYNC选项执行时,不会触发该事件.
在ASYNC执行时,我没有收到事件的原因吗?
这是我的代码:
class Program
{
static string connstring =
"data source = xyz;initial catalog = abc;user id=abc;password=abc;Asynchronous Processing=True";
static void Main(string[] args)
{
SqlConnection conn = new SqlConnection(connstring);
conn.InfoMessage += new SqlInfoMessageEventHandler(conn_InfoMessage);
SqlCommand cmd = new SqlCommand("TMP_PROC", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@TMP_ID", 1);
try
{
Console.WriteLine("connection open");
conn.Open();
Console.WriteLine("executing query");
//cmd.ExecuteNonQuery();
var result= cmd.BeginExecuteNonQuery(
p =>
{
try
{
var asyncCommand = p.AsyncState as SqlCommand;
Console.WriteLine("Execution Completed");
}
catch (Exception ex)
{
Console.WriteLine("Error:::{0}", ex.Message);
}
finally
{
conn.Close(); …Run Code Online (Sandbox Code Playgroud) 对于我正在开发的iOS应用程序,我希望多个手机相互连接,并能够在这些设备之间进行语音聊天.
当两个设备都在同一个网络上时,我就可以使用它.这很简单,我想做的大部分事情都是可能的.
但现在我正在增加互联网支持,这是一件非常麻烦的事情.我将首先尝试使用我设置的小型Web服务来解释我希望如何匹配设备.
服务器
网络服务
客户
这不起作用,因为我的网络不允许传入连接和随机端口(来自外部网络).
但现在的问题是,我该如何解决这个问题呢?我希望能够在2个设备之间建立对等连接,这些设备可以在同一网络上,也可以在不同的网络上.
是否有框架,示例或任何显示如何执行此操作的内容?我希望能够将数据从设备发送到设备,而不是先将其发送到服务器.
由于硬盘崩溃,我丢失了我正在创建的项目的SQL服务器数据库文件.
我仍然有我在.NET项目中使用的DBML文件,所以我仍然在文件中有数据库结构.
是否可以以某种方式将我的DBML导出到SQL服务器脚本,以在SQL Server中重新创建我的数据库.
cocoa-touch ×2
ios4 ×2
iphone ×2
objective-c ×2
sql-server ×2
.net ×1
ado.net ×1
c# ×1
gamekit ×1
ios ×1
linq ×1
linq-to-sql ×1
p2p ×1
sql ×1