小编R4j*_*R4j的帖子

使用robospice ormlite清除旧缓存数据

我使用ormlite来缓存sqlite数据库Robospice.缓存后的数据如下所示:

table cacheentry(由robospice生成)

rowid  cachekey      resultclass            resultIntegerId      timestamp
-------------------------------------------------------------------------------
  1      113     com.sq.src.EventResult            3             1381938044268
Run Code Online (Sandbox Code Playgroud)

EventResult

id     data     timestamp
-------------------------
1       121    1381938211268
2       122    1381938444278
3       123    1481938785422 
Run Code Online (Sandbox Code Playgroud)

当时间到期时,robospice将请求并添加新的行数据EventResult.
问题是我想只清除以下旧数据(清除行ID 1,2和保持行ID 3)EventResult:

getSpiceManager().removeDataFromCache(EventResult.class,113);
Run Code Online (Sandbox Code Playgroud)

但它只清除了cacheentry表中的缓存键行.
这一个清除了所有表格中的所有数据.

 getSpiceManager().removeAllDataFromCache();
Run Code Online (Sandbox Code Playgroud)

你能否告诉我如何控制清除旧数据并将最新的数据与robospice保持在一起?提前致谢.

更新:EventResult已被许多其他表引用,我必须清除它们中的所有引用行.

sqlite android ormlite robospice

5
推荐指数
0
解决办法
977
查看次数

从列表java中获取包含子列表的索引

我有字符串列表看起来像这样:

 List<String> parentDataList:  {"this", "is", "a", "test", "string", "and", "a", "test", "other"} 
 List<String> child1:   {"a", "test"}
 List<String> child2:   {"this", "string"} 
 List<String> child3:   {"is", "a", "test"} 
Run Code Online (Sandbox Code Playgroud)

我的期望是我想检查父列表是否包含序列子列表,然后在子列表的父列表中获取开始和结束索引.
从上面的例子:

 Parent contain child1 list, and return the indexes: [2 - 3] and [6 - 7]
 Parent doesn't contain child2 list because it isn't sequential.
 Parent contain child3 list, and return the index: [1 - 3] 
Run Code Online (Sandbox Code Playgroud)

我尝试使用List.containsAll方法,但它不关心列表项的顺序,我不能从这个方法获得开始和结束索引.
我正在寻找最快的方法,因为我的列表有很多数据,我必须从许多输入字符串中搜索.
任何帮助,将不胜感激!

更新:
我需要获取子列表的所有索引都包含在父列表中.例如,父级包含两个位置的child1:[2 - 3]和[6 - 7]

java list

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

相机自动对焦不适用于Galaxy S4

我使用这个片段使相机专注于文档:

// set focus mode is auto
List<String> supportModes = parameters.getSupportedFocusModes();
// find appreciate focus mode. In this case, the focus mode is 'auto' 
camParameters.setFocusMode(focusmode);

camera.autoFocus(new Camera.AutoFocusCallback() {

@Override
public void onAutoFocus(boolean success, Camera camera) {
    // do something after focusing  
}
});
Run Code Online (Sandbox Code Playgroud)

我把autoFocus方法放在一个计时器中,它以5秒的间隔调用.我的代码在许多设备(Galaxy ace,注3,S3 ......)上运行良好,除了Galaxy S4.从调试,我可以看到onAutoFocus回调被调用,但相机和表面视图没有任何反应.相机不会专注于任何事物.表面视图上的图像非常模糊.有谁知道这个bug?

android android-camera

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

StickyGridHeader中的弹出窗口显示错误的位置

我使用StickyGridHeaders库来创建像snapfish一样的Gridview .这是我的预期布局:

在此输入图像描述

触摸标题视图(红色箭头)上的按钮而不是复选框时,我会显示一个弹出窗口.问题是我的弹出窗口总是显示错误的位置.从调试窗口,我可以看到它与粘性标题具有相同的位置,但我通过使用关闭了gridview的粘性标题StickyGridHeadersGridView.setAreHeadersSticky(false);

这是我的适配器头:

    public View getHeaderView(final int position, View convertView, ViewGroup parent) {
            final HeaderViewHolder viewHolder;
            if(convertView == null){
                convertView = inflater.inflate(R.layout.item_header_gallery, null);
                viewHolder = new HeaderViewHolder();
                viewHolder.tvImagePrice = (TextView) convertView.findViewById(R.id.tvImagePrice);
                viewHolder.btnTouch = (Button) convertView.findViewById(R.id.btnTouch);
                convertView.setTag(viewHolder);
            }else{
                viewHolder = (HeaderViewHolder) convertView.getTag();       
            }

            ImageGroup item = headers.get(position);    
            viewHolder.tvImagePrice.setText(item.getPriceString());

            viewHolder.btnTouch.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    int[] location      = new int[2];

                    viewHolder.btnTouch.getLocationOnScreen(location);
                    // location always is [905,59] for every header …
Run Code Online (Sandbox Code Playgroud)

android android-gridview

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

将Listview项目拖放到另一个项目中

我有一个列表视图与不同的项目类型:标题,文件夹和文件,如下所示:

在此输入图像描述

现在我想实现拖动文件项并将其放入文件夹项并获取源和目标位置.我不想像拖动排序列表视图库那样拖动时更改目标位置(重新排列).

有什么建议可以开始吗?

android drag-and-drop android-listview

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

becomeFirstResponder 在 ios 11 中不显示键盘

我尝试在加载屏幕后显示键盘,如下所示:

 -(void) viewDidAppear:(BOOL)animated {
     [super viewDidAppear:animated];
     UITextField *tf = [[UITextField alloc] initWithFrame:CGRectMake(10, 200, 300, 40)];
     tf.borderStyle = UITextBorderStyleRoundedRect;
     tf.text = @"test";

    [self.view addSubview:tf]; 
    if([tf canBecomeFirstResponder]){
        [tf becomeFirstResponder]; // surely this line is called          
     }
 }
Run Code Online (Sandbox Code Playgroud)

此代码适用于 ios 8,9,10 但不适用于 11。我不确定为什么当文本字段聚焦(有光标)时,键盘不会在 ios 11 上自动显示。在这种情况下,不会调用键盘的通知:

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(keyboardWillShow:)
                                             name:UIKeyboardWillShowNotification
                                           object:nil];

- (void) keyboardWillShow:(NSNotification *)note {
    NSDictionary *userInfo = [note userInfo];
    CGSize kbSize = [[userInfo objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size;

    DLog(@"Keyboard Height: %f Width: %f", kbSize.height, kbSize.width);
 }
Run Code Online (Sandbox Code Playgroud)

我什至尝试这个:

[tf performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0]; 
Run Code Online (Sandbox Code Playgroud)

但还是不行。 …

keyboard objective-c ios

5
推荐指数
2
解决办法
3022
查看次数

Azure B2C 无密码注册,仅使用自定义策略中的电子邮件

我的系统需要在注册和登录时使用无密码和电子邮件身份验证。
这意味着用户只需输入电子邮件,然后系统会将一次性密码发送到该电子邮件并让用户登录(如果没有帐户)然而,只需使用该电子邮件默默地使用默认信息创建一个新的)
我尝试了此示例,它适用于现有的本地用户(使用电子邮件和密码)
是否有办法仅使用电子邮件创建本地用户?我的用户只看到输入电子邮件屏幕和输入密码屏幕。他们不需要填写其他任何东西。

azure azure-active-directory azure-ad-b2c

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

jfeinstein10 SlidingMenu:如何停止滑动菜单

不久,我有一个幻灯片菜单,我希望它只应该在用户按下菜单按钮而不是从左 - 右(或从右到左)滑动时显示菜单.
我的菜单配置如下:

    SlidingMenu sm = getSlidingMenu();
    sm.setMode(SlidingMenu.LEFT); // or sm.setMode(SlidingMenu.RIGHT);
    sm.setBehindOffsetRes(R.dimen.slidingmenu_offset);
    sm.setShadowWidthRes(R.dimen.shadow_width);
    sm.setShadowDrawable(R.drawable.shadow);
    sm.setBehindScrollScale(0.25f);
    sm.setFadeDegree(0.25f);    
Run Code Online (Sandbox Code Playgroud)

我找不到任何防止滑动菜单的配置.请问你能告诉我怎么办?
提前致谢.

android

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

在android中导出tesseract OCR的HOCR输出

我尝试使用tess-two,它是 Android 版 Tesseract Tools 的一个分支。我想打开hocrtesseract 中的输出,从这个链接,我尝试将变量设置tessedit_create_hocr为 true,但我在输出中看不到 hocr。这是我的尝试:

  baseApi.init(FileUtil.getAppFolder(), "eng", TessBaseAPI.OEM_TESSERACT_CUBE_COMBINED);
  baseApi.setVariable("tessedit_create_hocr", "1")
  baseApi.setImage(bitmap);
  String recognizedText = baseApi.getUTF8Text();
Run Code Online (Sandbox Code Playgroud)

有人告诉hocr输出应该位于配置文件夹或包含图像的文件夹中,但我没有看到任何内容。我不知道如何配置 hocr 输出的文件名和位置。

另一件事:有没有办法将配置文件应用到 Android 版 Tesseract Tools 中?我将配置文件放入tessdata/config 文件夹中,但没有任何反应。如何判断tesseract应该读取这些配置文件?看来他们没有足够的 Android 文档。

更新:感谢@nguyenq,现在我可以获取HOCR数据了。这是我的尝试:

  jstring Java_com_googlecode_tesseract_android_TessBaseAPI_nativeGetHOCRText(JNIEnv *env,
                                                                        jobject thiz,    jint page) {

 native_data_t *nat = get_native_data(env, thiz);

 char *text = nat->api.GetHOCRText(page);

 jstring result = env->NewStringUTF(text);

 free(text);

 return result;
 }
Run Code Online (Sandbox Code Playgroud)

ocr android tesseract

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

在xcode中设置C++编译标志

我在这个问题上遇到了同样的问题:使用FFTW为架构x86_64取消定义符号
我尝试在xcode中使用标志-L和-l作为C++,但它不起作用 在此输入图像描述 这是错误日志:

  clang: warning: -lsndfile: 'linker' input unused
  clang: warning: -lfftw3: 'linker' input unused
  clang: warning: argument unused during compilation: '-L/usr/local/lib'

  Undefined symbols for architecture x86_64:
   "_fftw_destroy_plan", referenced from:
     _main in main.o
   "_fftw_execute", referenced from:
     _main in main.o
   "_fftw_plan_dft_r2c_1d", referenced from:
   _main in main.o
   "_sf_close", referenced from:
    _main in main.o
   "_sf_open", referenced from:
    _main in main.o
   "_sf_read_double", referenced from:
    _main in main.o
   ld: symbol(s) not found for architecture x86_64
   clang: error: linker command failed with exit code 1 …
Run Code Online (Sandbox Code Playgroud)

c++ xcode gcc

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