问题列表 - 第43866页

UIFont fontWithName:限于每个家庭加载2个变种

这个问题与UILabel极为相似,自定义字体显示*错误*自定义字体,但我需要同时使用此系列中的三种字体.我正在使用Myriad Pro,就像那个问题一样,但我需要使用Bold,Semibold和Regular.

目前,当我尝试通过定义为:

#define MYRIAD_BOLD(x) [UIFont fontWithName:@"MyriadPro-Bold" size:(x)]
Run Code Online (Sandbox Code Playgroud)

..给了我Semibold.如果我从plist条目中删除"由应用程序提供的字体"中的Semibold(对于上面链接的类似问题的"答案"),正确返回Bold,但(显然)Semibold不再可用.

关于为什么我(看似)一次限制为两个自定义字体的任何想法?(来自同一个家庭,至少?)

顺便说一句,这是NSLog输出[UIFont fontNamesForFamilyName:@"Myriad Pro"]:

Myriad Pro font names: ( "MyriadPro-Semibold", "MyriadPro-Regular", "MyriadPro-Bold" )

谢谢!

cocoa-touch ios

5
推荐指数
1
解决办法
5853
查看次数

横向模式下的音高问题

我需要在纵向和横向模式下读取音调值(手机向后和向前倾斜了多少)。在人像中使用下面的代码波纹管,当手机保持面朝上平放时,我从value [1]得到的值是0.0,直立时为-90,设备面朝上时为180。到现在为止一切都很好...当设备处于横向模式时,问题就来了。此时,我正在使用value [2]来测量设备的倾斜度,但是问题在于值:当手机保持平放状态(确定)时,值为0;当手机直立放置(确定)时,值为0;但是当我继续进行操作时,则变为90。移动值再次下降到90以下(80、75等),因此基本上我无法区分这两个位置,因为值相同。所以我做错了

与此处的问题相同:http ://groups.google.com/group/android-beginners/browse_thread/thread/c691bbac3e294c7c?pli=1

我有以下代码:

private void ReadOrientationSensor(){
 final SensorManager sensorManager;

 final TextView text = (TextView) this.findViewById(R.id.TextView01);

sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);


SensorEventListener listener = new SensorEventListener() {

    @Override
    public void onAccuracyChanged(Sensor sensor, int accuracy) {
    }

    @Override
    public void onSensorChanged(SensorEvent event) {
        float x,y,z;
        x=event.values[0];
        y=event.values[1];
        z=event.values[2];


        //text.setText(String.valueOf(event.values[0]));
        text.setText("x: " + x + " y: " + y + " z: " + z);


        }

    };

        sensorManager.registerListener(listener, sensor,SensorManager.SENSOR_DELAY_FASTEST);
Run Code Online (Sandbox Code Playgroud)

}

android landscape sensor pitch tilt

5
推荐指数
1
解决办法
3482
查看次数

如何使用Boost :: Spirit :: Lex来调用文件而不先将整个文件读入内存?

我正在寻找使用boost :: spirit :: lex编写词法分析器,但我能找到的所有示例似乎都假设您已将整个文件首先读入RAM.我想写一个不需要整个字符串在RAM中的词法分析器,这可能吗?或者我需要使用其他东西吗?

我尝试使用istream_iterator,但是boost会给我一个编译错误,除非我使用const char*作为迭代器类型.

例如,我能找到的所有例子基本上都是这样做的:

lex_functor_type< lex::lexertl::lexer<> > lex_functor;

// assumes entire file is in memory
char const* first = str.c_str();
char const* last = &first[str.size()];

bool r = lex::tokenize(first, last, lex_functor, 
    boost::bind(lex_callback_functor(), _1, ... ));
Run Code Online (Sandbox Code Playgroud)

另外,是否有可能以某种方式确定lex令牌的行/列号?

谢谢!

c++ boost lex boost-spirit

6
推荐指数
1
解决办法
1259
查看次数

NSRange可以确定更大的字符串中是否存在一段文本?

我有一个从http GET回来的大字符串,我正在尝试确定它是否有特定的文本片段(请在这里原谅我的罪过)

我的问题是:可以/我应该使用NSRange来确定这段文本是否确实存在?

  NSRange textRange;
  textRange =[[responseString lowercaseString] rangeOfString:[@"hat" lowercaseString]];

  if(textRange.location != NSNotFound)
  {
    //do something magical with this hat
  }
Run Code Online (Sandbox Code Playgroud)

先感谢您!

objective-c nsrange

2
推荐指数
1
解决办法
3853
查看次数


提高Android Bitmap上getpixel()和setpixel()的速度

所有,

之后,我注意到有缓慢getPixelsetPixel有(不知道哪一个,都猜不涡轮增压)我赶紧编码的容器Bitmap,使用int[]阵列来处理位图操作.

已经 - 它明显更快,但这还不够.请问您如何进一步加快速度?

我的想法是跟踪setPixel函数"脏"的内容并仅更新调用Bitmap时的这一部分getBitmap()......不清楚如何设置setPixels参数(我猜测偏移和步幅的东西).

还 - 任何更快的食谱?

感谢您提前帮助!

import android.graphics.Bitmap;

public class DrawableBitmapContainer {
private Bitmap image;
private int width, height;
private int[]  pixels;
public DrawableBitmapContainer(Bitmap _source ){
    image = _source;
    width = image.getWidth();
    height = image.getHeight();
    pixels = new int[width*height];
    image.getPixels(pixels,0,width,0,0,width,height);
}
public int getPixel(int x,int y){
    return pixels[x+y*width];
}
public void setPixel(int x,int y, int color){
    pixels[x+y*width]=color;
}
public Bitmap …
Run Code Online (Sandbox Code Playgroud)

java performance android bitmap

7
推荐指数
1
解决办法
1万
查看次数

使用Rx阻止(并可能超时)异步操作

我正在尝试使用Reactive Extensions for .NET重写一些代码,但我需要一些关于如何实现目标的指导.

我有一个类在低级库中封装了一些异步行为.想想要读取或写入网络的东西.当类启动时,它将尝试连接到环境,并且当成功时,它将通过从工作线程调用来发回信号.

我想将此异步行为转换为同步调用,并在下面创建了一个极为简化的示例,说明如何实现:

ManualResetEvent readyEvent = new ManualResetEvent(false);

public void Start(TimeSpan timeout) {
  // Simulate a background process
  ThreadPool.QueueUserWorkItem(_ => AsyncStart(TimeSpan.FromSeconds(1)));
  // Wait for startup to complete.
  if (!this.readyEvent.WaitOne(timeout))
    throw new TimeoutException();
}

void AsyncStart(TimeSpan delay) {
  Thread.Sleep(delay); // Simulate startup delay.
  this.readyEvent.Set();
}
Run Code Online (Sandbox Code Playgroud)

AsyncStart在工作线程上运行只是模拟库的异步行为的一种方式,并不是我的实际代码的一部分,其中低级库提供线程并在回调上调用我的代码.

请注意,该Start方法将TimeoutException在超时间隔内抛出if start.

我想重写此代码以使用Rx.这是我的第一次尝试:

Subject<Unit> readySubject = new Subject<Unit>();

public void Start(TimeSpan timeout) {
  ThreadPool.QueueUserWorkItem(_ => AsyncStart(TimeSpan.FromSeconds(1)));
  // Point A - see below
  this.readySubject.Timeout(timeout).First();
}

void AsyncStart(TimeSpan delay) …
Run Code Online (Sandbox Code Playgroud)

.net c# system.reactive

9
推荐指数
1
解决办法
5403
查看次数

为什么我的Spring 3 Validator验证模型上的所有内容?

我有一个带有验证器的spring 3控制器,用于其中一种方法.它坚持验证模型上的每个对象.有人能够向我解释为什么会这样做或者我做错了什么?

根据文档,5.7.4.3配置一个JSR-303验证器供Spring MVC使用(http://static.springsource.org/spring/docs/3.0.0.RC3/spring-framework-reference/html/ch05s07. HTML)

使用JSR-303,单个javax.validation.Validator实例通常验证声明验证约束的所有模型对象.要使用Spring MVC配置支持JSR-303的Validator,只需将一个JSR-303 Provider(如Hibernate Validator)添加到类路径中.Spring MVC将检测它并自动启用所有控制器的JSR-303支持.

例:

@Controller
public class WhaleController {

        @Autowired
        private Validator myValidator;

        @Autowired
        private WhaleService whaleService;

        @InitBinder
        protected void initBinder(WebDataBinder binder) {
                binder.setValidator(this.myValidator);
        }

        @RequestMapping(value="/save-the-whales")
        @Transactional
        public void saveTheWhales(@Valid WhaleFormData formData, BindingResult errors, Model model) {
                if (!errors.hasFieldErrors()) {
                        Whale whale = new Whale();

                        whale.setBreed( formData.getBreed() );

                        this.whaleService.saveWhale( whale );

                        model.addAttribute("whale", whale);

                }
                model.addAttribute("errors", errors.getFieldErrors());
        }

}
Run Code Online (Sandbox Code Playgroud)

在运行时,它会抱怨Whale是myValidator的无效目标(设置为验证WhaleFormData,并且确实如此).鲸鱼是一种POJO,没有验证限制,注释和任何地方都没有配置.通过反复试验,我发现放置在模型上的任何对象都将尝试验证,如果验证器未设置为处理它,则会失败.基元很好.

任何人都可以告诉我为什么这样,请指出适当的文档和/或告诉我在没有验证的情况下将某些东西放在模型上的最佳方法?

在上面的例子中,我想在模型上放置"whale",因为它现在将具有从我的持久层接收的唯一whaleId().

谢谢!

validation spring spring-mvc

31
推荐指数
1
解决办法
9759
查看次数

如何以编程方式判断蓝牙设备是否已连接?(Android 2.2)

我知道如何获得配对设备列表,但我怎么知道它们是否已连接?

它必须是可能的,因为我看到它们列在我手机的蓝牙设备列表中,并说明了它们的连接状态.

android android-bluetooth

77
推荐指数
4
解决办法
11万
查看次数

如何在Windows XP上以管理员身份运行其他应用程序

我使用了此处所述的应用程序清单文件,使我的应用程序的一部分以提升的权限运行(它需要).
因此,在需要时,主程序只使用Process.Start调用一个小程序集,然后处理需要管理员权限的任务.

但是,如何在Windows XP上执行相同的操作?
似乎XP只是忽略了这个清单并在当前用户上下文中运行小程序集.

.net c# uac windows-xp elevation

6
推荐指数
1
解决办法
6118
查看次数