小编Ale*_*lan的帖子

iPhone:如何扩展可重复的UIImage?

我有一个用于构建推文的图像.它由两个圆形的rects组成,左上角有一个twitter图标.重要的是它是可重复的,因为你可以垂直复制中间部分的任何部分,它会相同,只是更长.这是我创建的图像:

推文框架

我的问题是,在代码中,我是如何扩展(或缩小)依赖于我的UITextView中有多少行?这样的东西来获得大小:

float requiredHeight = lines * 14;
Run Code Online (Sandbox Code Playgroud)

我知道这是可能的,因为苹果用他们的短信应用来做:)


更新:以下是执行此操作的完整代码:

UIImage *loadImage = [UIImage imageNamed:@"TwitPost.png"];
float w2 = loadImage.size.width/2;
float h2 = loadImage.size.height/2;
// I have now reduced the image size so the height must be offset a little (otherwise it stretches the bird!):
loadImage = [loadImage stretchableImageWithLeftCapWidth:w2 topCapHeight:h2+15];
imageView.image = loadImage;
Run Code Online (Sandbox Code Playgroud)

谢谢你的回答.

iphone objective-c uiimageview uiimage ios

4
推荐指数
1
解决办法
1392
查看次数

iPhone - 设备上的不同默认布尔值

我最近在模拟器上完成了一些完美的代码工作,并搞砸了设备.为什么? - 这很简单,但我无法解释这个解释.

我做了一点测试,创建了一个新的基于视图的应用程序,为标签添加了标签和插座,并在viewDidLoad中编写了这段代码:

BOOL b;
if (b) {
    label.text = @"Value = YES";
}
else {
    label.text = @"Value = NO";
}
Run Code Online (Sandbox Code Playgroud)

有趣的是,结果如下:

iOS模拟器(4.2):值=无
iOS模拟器(4.3):值=无
iPod Touch 2G(4.2.1)值= YES
iPhone 3G(4.2.1)值= YES

这表明了什么? - 对我来说,它看起来像在设备上,默认的布尔值是YES,在模拟器上,默认的布尔值是NO.

任何人都可以澄清是否是这种情况?如果有人能解释这种行为,我会非常感兴趣.

我对问题的解决方案感兴趣,显然可以通过NO手动设置所需的默认值(在我的情况下)来解决.

谢谢.

iphone boolean objective-c

4
推荐指数
1
解决办法
1084
查看次数

让div坚持到其他div的一边

我正在尝试使用jQuery将div显示为滑出另一个div的右侧.

我通过在jQuery中使用和获取触发器元素的位置,并相应地定位弹出窗口,将我的解决方案基于此答案position:absolute.

你可以看到我到目前为止所做的JSFiddle的结果:结果/来源.

问题是,因为popover div使用position:absolute,如果我调整页面大小,或滚动条出现/消失 - 弹出窗口与触发器div不一致.

如何将popover div粘贴到触发器div的右侧?

html css jquery layout

4
推荐指数
1
解决办法
5332
查看次数

应用程序提交 - iPad屏幕截图是可选的

我正在将我的第一个应用程序提交到应用程序商店 - 因为我的应用程序仅适用于iPhone(而不是iPad) - 上传iPad屏幕截图是否可选? - 或者我是否必须在iPad上显示我的应用程序的屏幕截图?

iphone app-store

4
推荐指数
1
解决办法
4048
查看次数

如何在IPv4 PHP中处理IPv6地址

我是一名iphone开发者 - 网络开发者的新手,所以请耐心等待!
我目前正在使用MAMP进行本地测试.

我的网站上有一个高度安全的部分.除了需要用户/通行证 - 它还会检查用户的IP.如果以前未使用该IP帐户,则会将该IP以及唯一ID添加到保留表中,并向用户发送电子邮件,要求确认从该位置访问其帐户.

如果用户登录,并且他们的IP与我的"允许"表中与其用户ID关联的任何IP都不匹配,则执行上述任务,他们会收到一封电子邮件.

我用来生成他们点击的链接的URL的代码看起来有点像这样:

if (preg_match('/^127./',$ip)) {
    // accessed from this machine
    $val_url = "http://localhost:8888/mywebsite/admin/aproove_ip.php?email=$admin_email&val=$hash";
}
else if (preg_match('/^192\.168./',$ip)) {
    // accessed form a local networked computer
    $val_url = "http://super.local:8888/mywebsite/admin/aproove_ip.php?email=$admin_email&val=$hash";
    // note super.local is my machine's address, 8888 is MAMP port
}
else {
    // accessed from the WWW
    $val_url = "http://www.mywebsite.com/admin/aproove_ip.php?email=$admin_email&val=$hash";
}
Run Code Online (Sandbox Code Playgroud)

现在,这在我的计算机上进行测试时非常有效.

但是,我决定(不要问为什么)从我的iPod Touch和它发送给我的电子邮件(验证IP)进行测试,它给了我完整的在线地址,好像它是从WWW访问的(即两者都没有)对正则表达式的满意度).我查看了包含请求的保留表,并且请求的IP是:fe80::da30:62ff:fe18:6681.

我猜那是ipv6? - 我需要知道的是以下内容:

  • 我应该期望ipv6 addressess在我的网站上线时点击我的网站吗?
  • 如何判断它是否是本地请求(如我的正则表达式为192.168 ......和127 ......)

我非常感谢任何有关这方面的建议,因为我觉得它真的令人困惑

php mysql ip ipv6

3
推荐指数
1
解决办法
1984
查看次数

Rails - 向模型添加字段后的奇怪行为

我有一个非常简单的用户模型.当我第一次创造了它,它有三个字段email,password_hashpassword_salt.

我最近在该模型中添加了一个字段,以便允许用户设置显示名称,即被调用的字段display.我使用了这个答案中概述的方法.所以我在终端输入的内容如下所示:

script/rails g migration add_display_to_users display:string
Run Code Online (Sandbox Code Playgroud)

然后

rake db:migrate
Run Code Online (Sandbox Code Playgroud)

这很好用,在修改我的注册表单后,我能够将这些数据添加到数据库中.

在我的应用程序布局中,我想在标题中显示用户的显示名称.所以,在我的应用程序控制器中,我在每个控制器中调用一个方法来获取被调用的导航栏nav_bar.在这个方法中,我还设置了一个@user实例变量,如果他们已登录.

因为nav_bar在应用程序控制器中调用了该 方法,所以我可以从应用程序布局中访问它.所以,我试图在标题中显示他们的电子邮件作为测试,如下所示:

<% if @user %>
    <div class="ac_button">
        <%= @user.email %>
    </div>
<% end %>
Run Code Online (Sandbox Code Playgroud)

这很好,并在标题中显示他们的电子邮件.但是,如果我将其更改为

 <%= @user.display %>
Run Code Online (Sandbox Code Playgroud)

它没有显示任何内容.

最奇怪的部分是,如果我@user.email在应用程序控制器或布局中的某个地方调用,或者用户的任何其他属性.它工作,并显示其显示名称.我不知道为什么会让它发挥作用,但确实如此.

例如,如果在应用程序控制器中找到用户后,我打电话@user.email,它将在布局中显示其显示名称.

def nav_bar
    if session[:user_id]
      @user = User.find(session[:user_id])
      @user.email
    end
    # create and return the navbar
end
Run Code Online (Sandbox Code Playgroud)

或者,如果在布局中,我在任何地方调用用户的属性,它也可以.

<div class="ac_button">
    <% @user.password_hash %>
    <%= @user.display %>
</div> …
Run Code Online (Sandbox Code Playgroud)

activerecord model ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

3
推荐指数
1
解决办法
108
查看次数

更改默认的Dreamweaver模板

我不确定这是否与编程有关,是否存在堆栈溢出,但无论如何......

我想在创建新的HTML文件或PHP文件时更改在Dreamweaver中创建的代码.

例如,我想替换默认的doctype和HTML标记:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
Run Code Online (Sandbox Code Playgroud)

有了这个:

<!DOCTYPE html>
<html>
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

html php templates default dreamweaver

3
推荐指数
2
解决办法
3916
查看次数

这足以阻止机器人吗?

我一直在考虑简单的方法来防止垃圾邮件机器人在网站上将内容提交到公共表单(例如联系表单).

我知道很多网站现在会问用户一个简单的问题(例如2 + 4是什么?).

如果您有以下内容,是否足以阻止大多数机器人?

HTML

<form action="submit.php" method="post">
    <input type="text" name="name" placeholder="Name" /><br />
    <textarea name="message" placeholder="Message"></textarea><br />
    <label for="test">I am a:</label>
    <select id="test">
        <option value="robot" selected="selected">Robot</option>
        <option value="human">Human</option>
    </select>
</form>
Run Code Online (Sandbox Code Playgroud)

PHP

<?php
if ($_POST['test'] == 'robot') header ('Location: contact.php?err=nothuman');
// process form
?>
Run Code Online (Sandbox Code Playgroud)

作为机器人的想法可能会将选项留在所选项目上.

如果有人有另一个非常简单的解决方案,我会有兴趣听到吗?

html php spam-prevention web-crawler

3
推荐指数
1
解决办法
456
查看次数

为什么haskell中的这个平均功能不起作用?

我想在Haskell中创建一个简单的平均(平均)函数,所以我在ghci中尝试了以下内容:

ghci> let avg xs = (sum xs) / (length xs)
Run Code Online (Sandbox Code Playgroud)

它会引发以下错误:

No instance for (Fractional Int)
  arising from a use of `/'
Possible fix: add an instance declaration for (Fractional Int)
In the expression: (sum xs) / (length xs)
In an equation for `avg': avg xs = (sum xs) / (length xs)
Run Code Online (Sandbox Code Playgroud)

因此,我决定通过尝试以下方法将其分解:

ghci> let a = (sum [1,2])
ghci> let b = (length [1,2])
Run Code Online (Sandbox Code Playgroud)

这一切都很好.

那么我尝试了以下内容

ghci> a/b
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Couldn't match expected type `Integer' with actual type `Int' …
Run Code Online (Sandbox Code Playgroud)

haskell types casting

3
推荐指数
1
解决办法
1958
查看次数

将我的网站转移到html5

目前我的网站以XHTML严格编码.是否可以通过更改doctypes将其转换为HTML5?或者我需要做出其他改变吗?

html xhtml markup html5

3
推荐指数
1
解决办法
8002
查看次数