我使用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已被许多其他表引用,我必须清除它们中的所有引用行.
我有字符串列表看起来像这样:
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]
我使用这个片段使相机专注于文档:
// 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?
我使用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) 我有一个列表视图与不同的项目类型:标题,文件夹和文件,如下所示:
现在我想实现拖动文件项并将其放入文件夹项并获取源和目标位置.我不想像拖动排序列表视图库那样拖动时更改目标位置(重新排列).
有什么建议可以开始吗?
我尝试在加载屏幕后显示键盘,如下所示:
-(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)
但还是不行。 …
我的系统需要在注册和登录时使用无密码和电子邮件身份验证。
这意味着用户只需输入电子邮件,然后系统会将一次性密码发送到该电子邮件并让用户登录(如果没有帐户)然而,只需使用该电子邮件默默地使用默认信息创建一个新的)
我尝试了此示例,它适用于现有的本地用户(使用电子邮件和密码)
是否有办法仅使用电子邮件创建本地用户?我的用户只看到输入电子邮件屏幕和输入密码屏幕。他们不需要填写其他任何东西。
不久,我有一个幻灯片菜单,我希望它只应该在用户按下菜单按钮而不是从左 - 右(或从右到左)滑动时显示菜单.
我的菜单配置如下:
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)
我找不到任何防止滑动菜单的配置.请问你能告诉我怎么办?
提前致谢.
我尝试使用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) 我在这个问题上遇到了同样的问题:使用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)