小编Run*_*oop的帖子

MPAndroidChart:在堆积条形图中隐藏0值标签

我使用MPAndroidChart显示包含两组数据(收入和支出)的堆积条形图.当值为0时,我遇到问题,标签与其他x轴值重叠.

在屏幕截图的情况下,您可以看到具有值的条形具有以下日期的重叠值:14/4,15/4和16/4.

如何隐藏0值以停止重叠问题?堆积的条形图图

android mpandroidchart

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

在服务器上更新 Django 应用程序

我对 Python/Django 比较陌生,并且已经成功部署了我的第一个应用程序。我现在想用一些新的更改来更新它,但我不确定正确的过程是什么。我的设置是 ubuntu/nginx/gunicorn/postgres。

目前我正在采取以下步骤:

  1. 停止 nginx: sudo service nginx stop
  2. 停止 gunicorn: sudo service gunicorn stop
  3. 备份数据库?(未实现 - 在服务器上找不到它)
  4. Git 拉取
  5. python manage.py 迁移
  6. python manage.py collectstatic
  7. 重启 gunicorn: sudo service gunicorn start
  8. 重启 nginx: sudo service nginx restart

这是有效的,但如果这是完成此操作的完整、最准确和最安全的方法,我将不胜感激?

django postgresql nginx gunicorn

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

相对布局将下方的项目与另一项目的中间对齐

我正在使用相对布局,并希望在下方和按钮中间对齐TextView,如附图所示.我可以使用BELOW将其调到底部,但无法弄清楚如何对齐它们的水平中心.

在此输入图像描述

android

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

片段在旋转时没有被破坏

我有一个以编程方式添加的片段.然而,我发现在旋转之后,会创建一个新片段,但旧片段仍处于活动状态(虽然没有显示)我假设片段与旋转活动一起被销毁,但这不是这里的情况.什么可能导致我的片段被保留/不被破坏?请注意:

  1. 我没有设置setRetainInstance.
  2. 该片段未添加到onCreate活动中(稍后在点击按钮时添加)
  3. 我可以看到onDestroy在旋转时被调用
  4. 虽然添加了片段,但它会模糊添加按钮,只有在我执行"删除"时才会被删除.

创建片段的代码:

MyFragment fragment = MyFragment();
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.add(R.id.content_frame, fragment, "CurrentFragment");
fragmentTransaction.show(fragment).commit();
Run Code Online (Sandbox Code Playgroud)

删除片段的代码:

FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.remove(fragment).commit();
Run Code Online (Sandbox Code Playgroud)

更新:我无法确认这是否是问题,但片段在onCreate中注册为LocalBroadcast接收器.它在onDestroy中未注册广播,但似乎LocalBroadcast注册阻止调用onDestroy,或者在旋转时没有调用onDestroy.我现在在onStop中取消注册,这似乎解决了这个问题.

android android-fragments

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

与django中的elasticsearch进行交互

我想将elasticsearch用于一个新项目,从我的研究中,似乎有3个可行的解决方案:

  1. 不要使用包装器并直接与elasticsearch进行通信
  2. 使用elasticsearch-py
  3. 使用elasticsearch-dsl-py

我喜欢解决方案1,因为它不需要依赖关系,我可以专注于学习本机语法/ api而不是2或3中的包装器.是否有任何令人信服的理由使用2或3超过1?

更新

我最终使用elasticsearch-py,因为它提供了连接池和持久性等各种好处.我发现elasticsearch-dsl-py太抽象和冗长

python django elasticsearch

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

使用CATransform3DRotate发出动画

我的代码如下,但动画只是立即发生,即视图不再可见:

UIView *leftDoorView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width /2, self.view.bounds.size.height)];      
leftDoorView.backgroundColor = [UIColor greenColor];
leftDoorView.layer.anchorPoint = CGPointMake(0.0, 0.5);
[self.view addSubview:leftDoorView];

leftDoorView.center = CGPointMake(0.0, self.view.bounds.size.height/2.0); //compensate for anchor offset

CATransform3D transform = CATransform3DIdentity;
transform.m34 = -1.0f/500.0;
transform = CATransform3DRotate(transform, M_PI_2, 0, 1, 0);

[UIView animateWithDuration:1.0 animations:^{

        leftDoorView.layer.transform = transform;
 }];
Run Code Online (Sandbox Code Playgroud)

不知道我做错了什么 - 任何帮助将不胜感激.

core-animation core-graphics ios

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

确定2个字符串匹配概率的最佳实践

我需要编写代码以确定当其中一个字符串可能包含与第二个字符串的小偏差时是否匹配2个字符串,例如"南非"v"南非"或"英格兰"v"Enlgand".目前,我正在考虑以下方法

  1. 确定字符串1中与字符串2中的字符匹配的字符百分比
  2. 通过将1的结果与2个字符串的长度的比较相结合来确定匹配的真实概率,例如,虽然"SA"中的所有字符都在"南非"中找到,但是因为"SA"不是很可能匹配也可以在一系列其他国家名称中找到.

我将很高兴听到当前最佳实践是执行此类字符串匹配.

iphone cocoa-touch objective-c ios

4
推荐指数
2
解决办法
2930
查看次数

基本问题是Objective-C属性语法

关于Objective C中属性的语法和用法,我有几个基本问​​题:

假设标题中包含以下声明:

@interface TestObject : NSObject {

    NSArray *myArray;
}

@property (nonatomic, retain) NSArray *myArray;
Run Code Online (Sandbox Code Playgroud)

在实施中,我可以:

  1. 项目清单
  2. 使用myArrayself.myArray互换用于设置和获取目的?
  3. self.myArray = nil相当于[myArray release]
    如果是这样,是否有理由使用self.myArray = nil而不是[myArray release]

cocoa cocoa-touch objective-c

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

通过JSONObject迭代

我将来自Web服务的响应解析为a JSONObject,在记录时,如下所示:

{"Preferences":"{Pref1=Apple, Pref2=Pear}"}
Run Code Online (Sandbox Code Playgroud)

我理解如何询问Preferences标签,例如jsonObject.get("Preferences").但是,我不明白我要回到什么对象,也不知道如何迭代它.如何迭代返回的对象jsonObject.get("Preferences")

android json

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

发布带有proguard问题的版本 - GSON

如果我在调试中构建我的应用程序,它可以很好 但是,当我使用proguard构建发布时,我会遇到几个错误,然后构建失败.错误摘要:

Warning:there were 445 unresolved references to classes or interfaces.
Warning:there were 13 instances of library classes depending on program classes.
Run Code Online (Sandbox Code Playgroud)

我修改了我的proguard-rules.txt文件,如下所示.这使得构建成功,但是当我安装应用程序时,亚马逊下载不起作用(在调试版本中工作).

-keep class org.xmlpull.v1.**
-keep class org.apache.http.**
-keep class org.ietf.jgss.**
-keep class com.amazonaws.services.**
-keep class org.w3c.dom.bootstrap.**

-dontwarn org.xmlpull.v1.**
-dontwarn org.apache.http.**
-dontwarn org.ietf.jgss.**
-dontwarn com.amazonaws.services.**
-dontwarn org.w3c.dom.bootstrap.**
Run Code Online (Sandbox Code Playgroud)

有关如何解决此问题的任何建议吗?

更新:

已将其缩小到GSON/JSONPARSER问题.对于发行版本,JSONPARSER不会像在调试中那样将下载的json转换为提供的类.GSON proguard规则(参见更新2)也已添加,但问题仍然存在.

-keep class org.apache.commons.logging.**               { *; }
-keep class com.amazonaws.services.sqs.QueueUrlHandler  { *; }
-keep class com.amazonaws.javax.xml.transform.sax.*     { public *; }
-keep class com.amazonaws.javax.xml.stream.**           { *; }
-keep class com.amazonaws.services.**.model.*Exception* …
Run Code Online (Sandbox Code Playgroud)

android proguard gson

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