我已经通过领域创建了一个数据库,我无法找到该文件,因为我的操作系统(Yosemite)在/ private/var/mobile中没有移动文件夹.
我应该如何访问我的领域以在浏览器中运行?
Cross从谷歌小组发布
是否可以使用Enum作为我的模型的属性?我目前有一个这样的课程:
class Checkin: RLMObject {
dynamic var id: Int = 0
dynamic var kind: String = "checked_in"
var kindEnum: Kind = .CheckedIn {
willSet { self.kind = newValue.rawValue }
}
enum Kind: String {
case CheckedIn = "checked_in"
case EnRoute = "en_route"
case DroppedOff = "dropped_off"
}
....
}
Run Code Online (Sandbox Code Playgroud)
它工作正常,但我希望能够将该kind属性设置为Enum并让Realm .rawValue在将对象保存到商店时自动调用该属性.这在Realm中是否可行,或者是否已有针对它的功能请求?
我正在使用领域(目前为0.85.0),我的应用程序使用数据库来存储用户特定的数据,例如当前用户的联系人.当用户决定退出时,我需要删除关于用户的每一点信息,在我看来,最明显,简单和干净的东西将是擦除整个领域.不幸的是,Cocoa lib没有提供该功能.
目前,我坚持以下
RLMRealm *realm = [RLMRealm defaultRealm];
[realm beginWriteTransaction];
[realm deleteObjects:[MyRealmClass1 allObjectsInRealm:realm]];
[realm deleteObjects:[MyRealmClass2 allObjectsInRealm:realm]];
[realm deleteObjects:[MyRealmClass3 allObjectsInRealm:realm]];
[realm commitWriteTransaction];
Run Code Online (Sandbox Code Playgroud)
任何更好的想法?
谢谢
在我的项目中,获取联系人需要很长时间才能加载.
如何减少加载联系人的时间?有什么想法吗?
在编写初始方法时,我提到了以下链接.
http://www.coderzheaven.com/2011/06/13/get-all-details-from-contacts-in-android/
我可以在展示之前用Picasso下载图像吗?我想先缓存图像.
示例场景:用户单击按钮,查看进度条,图像加载完成后,用户可以在屏幕上看到图像.
我尝试使用"get"方法加载图像,但是没有缓存图像.
Thread thread = new Thread()
{
@Override
public void run() {
try {
Picasso picasso = PicassoOwnCache.with(getApplicationContext());
RequestCreator picassoRequest;
for (String imgUrl : imagesUrls) {
picassoRequest = picasso.load(imgUrl);
picassoRequest.get();
}
} catch (Exception e) {
e.printStackTrace();
}
}
};
thread.start();
Run Code Online (Sandbox Code Playgroud)
这是我的毕加索单身课程
public class PicassoOwnCache {
static Picasso singleton = null;
static Cache cache = null;
public static Picasso with(int cacheSize, Context context) {
if (singleton == null) {
int maxSize = calculateMemoryCacheSize(context);
cache = new LruCache(cacheSize <= …Run Code Online (Sandbox Code Playgroud) 我看到这个命令漂浮在各个站点上.
git checkout --track -b <...>
如果我在远程服务器上创建一个裸仓库并在两个不同的位置工作,那么最快和"批准"的方式是什么?
我做的是,我在我的笔记本电脑上创建了初始回购,然后将更改推送到我的VPS回购所在的"原点"(裸回购).现在,在我的桌面上,我应该克隆我的回购?我问,因为我有两个分支,"dev"和"master".一旦我在桌面上,我不确定是否应该"跟踪"回购或者我应该先克隆?如果我想在dev分支上工作,那么当我使用--track指令结账时该怎么办?
这是我到目前为止所做的.
在笔记本上
cd devproject
git init
git add .
git commit -m "My first commit"
Run Code Online (Sandbox Code Playgroud)
关于VPS回购
mkdir /home/sam/devproject.git
cd /home/sam/devproject.git
git --bare init
exit
Run Code Online (Sandbox Code Playgroud)
回到笔记本电脑
cd devproject
git remote add origin ssh://myserver.com/home/sam/devproject.git
Run Code Online (Sandbox Code Playgroud)
在桌面上(??)
git clone <..>
Run Code Online (Sandbox Code Playgroud) 所以我不知道为什么我会收到这个错误.错误消息如下:
*由于未捕获的异常'RLMException'而终止应用程序,原因是:'尝试修改写事务之外的对象 - 首先在RLMRealm实例上调用beginWriteTransaction.*第一次抛出调用堆栈:(0x2f7b0f83 0x39f61ccf 0xc46ef 0xc3c23 0xc0c9d 0xb3e73 0x3a449833 0x3a449ded 0x3a44a297 0x3a45c88d 0x3a45cb21 0x3a58bbd3 0x3a58ba98)libc ++ abi.dylib:以NSException类型的未捕获异常终止
并在执行此代码时抛出.
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
UITextField * alertTextField = [alertView textFieldAtIndex:0];
if (![self.chatSession.theirAlias isEqualToString:alertTextField.text]) {
self.sender = alertTextField.text;
dispatch_queue_t queue = ((AppDelegate *)[UIApplication sharedApplication].delegate).queueForWrites;
dispatch_async(queue, ^{
[[RLMRealm defaultRealm] beginWriteTransaction];
self.chatSession.myAlias = alertTextField.text; // This is the line where the error is thrown
[[RLMRealm defaultRealm] commitWriteTransaction];
});
} else {
[self promptForAliasAfterRejection];
}
}
Run Code Online (Sandbox Code Playgroud)
我很清楚我在写一个事务中写作.这是Realm的错误吗?或者我错过了什么......?
有没有办法存储int []和String [],除了创建一个包含这些的新对象,然后将其存储在realmList中
我有一个对象,它接受String,int []和String []的参数.你不能在领域中存储int []和String [],所以我创建了一个对象
public class Workouts extends RealmObject {
private String workout;
public Workouts() {
}
public Workouts(String workout) {
this.workout = workout;
}
public String getWorkout() {
return workout;
}
public void setWorkout(String workout) {
this.workout = workout;
}
}
Run Code Online (Sandbox Code Playgroud)
和
public class Multiplier extends RealmObject {
private int multiplier;
public Multiplier() {
}
public Multiplier(int multiplier) {
this.multiplier = multiplier;
}
public int getMultiplier() {
return multiplier;
}
public void setMultiplier(int multiplier) { …Run Code Online (Sandbox Code Playgroud) 我正在尝试在所有版本的Android上创建与Froyo相同的Spinners.为此,我正在使用HoloEverywhere.一些微调项目文本是多行,我希望它包装.
使用默认布局,android.R.layout.simple_spinner_dropdown_item或者HoloEverywhere的直接替换,可以对文本进行椭圆化处理,而不是将其包裹起来.
将HoloEverywhere的布局作为自定义布局的起点,singleLine设置为false,ellipsize设置为none,并layout_height设置为wrap_content无效,文本仍然被切断.
我可以将文本正确地包装在下拉列表TextView中LinearLayout,但是在Froyo设备上,这会弄乱所选项目的显示:

此方法适用于较新的设备.所有设备上的下拉项目布局都很好.但是当我使用自定义下拉项目布局时,Froyo会将这个奇怪的文本重叠.每个选择都会堆积在最后一个选项之上.
这个问题: Spinner不会包装文本 - 这是一个Android错误吗?关于Spinners中的文本包装建议只有这样才能从头开始重新创建样式而不继承,但这听起来很疯狂并且容易出现问题.
my_simple_list_item_1.xml:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="300dp"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/android:text1"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:ellipsize="marquee"
android:layout_gravity="center_vertical"
android:singleLine="false"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
Java的:
import org.holoeverywhere.widget.Spinner;
spinner1.setAdapter(ArrayAdapter.createFromResource(this,
R.array.array_of_strings, R.layout.my_simple_list_item_1));
Run Code Online (Sandbox Code Playgroud) android styles android-layout android-spinner android-holo-everywhere