我有一些代码,我想在我的MainViewController中只运行一次.它应该在用户每次启动应用程序时运行,但仅在MainViewController加载后运行.
我不想运行它-(void)applicationDidFinishLaunching:(UIApplication *)application
.
这是我的想法:
MainViewController.h
@interface IpadMainViewController : UIViewController <UISplitViewControllerDelegate> {
BOOL hasRun;
}
@property (nonatomic, assign) BOOL hasRun;
Run Code Online (Sandbox Code Playgroud)
MainViewController.m
@synthesize hasRun;
-(void)viewDidLoad {
[super viewDidLoad];
if (hasRun == 0) {
// Do some stuff
hasRun = 1;
}
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
当专注于输入字段时,是否可以禁用Mobile Safari中的"下一个"和"上一个"按钮?我一直在尝试将所有字段设置为readonly="readonly"
和分别在焦点/模糊上删除/重新应用属性的方法.它适用于某些领域,但并非适用于所有领域.在某些情况下,它感觉相当hacky/buggy.我可以普遍禁用上一个和下一个控件吗?这适用于iPad网络应用,因此可访问性不是问题.
我想在不使用的情况下选择回调中的节点d3.select(this)
.
我有一些代码可以画出一个馅饼......
function drawPie(options) {
options || (options = {});
var data = options.data || [],
element = options.element,
radius = options.radius || 100,
xOffset = Math.floor(parseInt(d3.select(element).style('width'), 10) / 2),
yOffset = radius + 20;
var canvas = d3.select(element)
.append("svg:svg")
.data([data])
.attr("width", options.width)
.attr("height", options.height)
.append("svg:g")
.attr("transform", "translate(" + xOffset + "," + yOffset + ")");
var arc = d3.svg.arc()
.outerRadius(radius);
var pie = d3.layout.pie()
.value(function(data) {
return data.percentageOfSavingsGoalValuation;
});
var arcs = canvas.selectAll("g.slice")
.data(pie)
.enter()
.append("svg:g")
.attr("class", …
Run Code Online (Sandbox Code Playgroud) 我用这些过滤器去饱和图像:
img {
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
filter: gray;
-webkit-filter: grayscale(1);
}
Run Code Online (Sandbox Code Playgroud)
尽管过滤器似乎在Mobile Safari上对图像进行像素化,但效果很好.我不知道为什么会这样.是否有保密的秘密方法?或者我必须忍受这个浏览器的缺点吗?作为一个例子,这里有一些并列的截图,取自iOS模拟器:
我需要检查德国IBAN的输入字段.应允许用户离开白色空格,并且应该验证输入是否具有起始DE
,然后是20个字符的数字和字母.
没有空白空间,我试过了
^[DE]{2}([0-9a-zA-Z]{20})$
Run Code Online (Sandbox Code Playgroud)
但我无法找到在何处以及如何在任何地方添加"空白区域".
这应该很简单,但我根本找不到解决方案.
感谢帮助!
我正在尝试在我的Rails 4应用程序中为控制器方法编写一个简单的隔离测试.该方法从查询字符串中获取ID,要求Project
模型为持久层提供一些行,并将结果呈现为JSON.
class ProjectsController < ApplicationController
def projects_for_company
render json: Project.for_company(params[:company_id])
end
end
Run Code Online (Sandbox Code Playgroud)
我正在努力使用该for_company
方法.这是我正在尝试的代码:
require "rails_helper"
describe ProjectsController do
describe "GET #projects_for_company" do
it "returns a JSON string of projects for a company" do
dbl = class_double("Project")
project = FactoryGirl.build_stubbed(:project)
allow(dbl).to receive(:for_company).and_return([project])
get :projects_for_company
expect(response.body).to eq([project].to_json)
end
end
end
Run Code Online (Sandbox Code Playgroud)
由于我已经删除了该for_company
方法,因此我希望忽略该方法的实现.但是,如果我的模型看起来像这样:
class Project < ActiveRecord::Base
def self.for_company(id)
p "I should not be called"
end
end
Run Code Online (Sandbox Code Playgroud)
...然后我可以看到它I should not be called
实际上是打印到屏幕上的.我究竟做错了什么?
我的客户希望在他们的网站上放一些视频.在过去,我总是将视频转换为FLV,并使用LongTail Player之类的东西来播放它.
然而,现在当然很多人使用智能手机,如iPhone不播放闪存文件 - 所以最好的选择是什么?是选择一种格式的情况,还是最好使用闪存,然后为iPhone用户提供下载?我注意到我在iphone上查看过的一些网站,你可以点击视频,然后在YouTubes视频播放器中启动 - 这可能是一个选择吗?
意见将不胜感激.
在tmux中,状态栏通常显示窗口列表中窗格的当前工作目录.如果我在窗口中有两个窗格,并且两个窗格具有不同的工作目录,是否可以使用我当前关注的窗格的当前工作目录自动更新状态栏?
为了澄清,如果我有一个带有两个窗格的窗口,并且第一个窗格在~
,第二个窗格在~/Sites
,我希望状态栏中的窗口列表说1:〜当我专注于第一个窗格时,1:〜/我专注于第二个窗格时的网站.
我试图让vim看起来更像我在Coda 2中习惯的东西.
在我的.vimrc
我有这条线:
set listchars=tab:?.,extends:#,nbsp:.
Run Code Online (Sandbox Code Playgroud)
这使我的空白看起来像这样:
但是,我宁愿那些点不可见,所以它看起来更像是这样的:
我尝试过使用空格字符,但我最终得到了这个警告:
E474: Invalid argument: listchars=tab:?
Run Code Online (Sandbox Code Playgroud)
我可以使用哪种字符在屏幕上不可见,也不会发出警告?
css ×1
css3 ×1
d3.js ×1
html ×1
iban ×1
ios ×1
javascript ×1
jquery ×1
objective-c ×1
regex ×1
rspec ×1
ruby ×1
svg-filters ×1
tmux ×1
video ×1
viewport ×1
vim ×1
whitespace ×1