小编Vad*_*tov的帖子

如何自定义MKAnnotationView的标注气泡?

我目前正在使用mapkit并且卡住了.

我有一个我正在使用的自定义注释视图,我想使用image属性在我自己的图标上显示地图上的点.我有这个工作正常.但我还想做的是覆盖默认的标注视图(触摸注释图标时显示标题/副标题的气泡).我希望能够控制标注本身:mapkit只提供对左右辅助标注视图的访问,但是没有办法为标注泡泡提供自定义视图,或者给它零大小或其他任何东西.

我的想法是覆盖我的selectAnnotation/deselectAnnotation MKMapViewDelegate,然后通过调用我的自定义注释视图来绘制我自己的自定义视图.这有效,但只有在我的自定义注释视图类中canShowCallout设置时才有效YES.如果我将此设置为NO(这是我想要的,那么不会调用这些方法,因此不会绘制默认的标注气泡).所以我无法知道用户是否在地图上触摸了我的点(选中它)或触摸了一个不属于我的注释视图(被选中)的点而没有显示默认的标注气泡视图.

我试着走另一条路,只是自己在地图上处理所有触摸事件,我似乎无法让这个工作.我在地图视图中阅读了与捕捉触摸事件相关的其他帖子,但它们并不完全是我想要的.有没有办法挖掘地图视图以在绘制之前删除标注气泡?我不知所措.

有什么建议?我错过了一些明显的东西吗

objective-c mapkit mkmapview mkannotationview ios

89
推荐指数
6
解决办法
6万
查看次数

Android获得内部/外部内存的免费大小

我想以编程方式获取设备内部/外部存储空闲内存的大小.我正在使用这段代码:

StatFs stat = new StatFs(Environment.getExternalStorageDirectory().getPath());
long bytesAvailable = (long)stat.getBlockSize() *(long)stat.getBlockCount();
long megAvailable = bytesAvailable / 1048576;
Log.e("","Available MB : "+megAvailable);

File path = Environment.getDataDirectory();
StatFs stat2 = new StatFs(path.getPath());
long blockSize = stat2.getBlockSize();
long availableBlocks = stat2.getAvailableBlocks();
String format =  Formatter.formatFileSize(this, availableBlocks * blockSize);
Log.e("","Format : "+format);
Run Code Online (Sandbox Code Playgroud)

而我得到的结果是:

11-15 10:27:18.844: E/(25822): Available MB : 7572
11-15 10:27:18.844: E/(25822): Format : 869MB
Run Code Online (Sandbox Code Playgroud)

问题是我想获得1,96GB现在的SdCard的免费记忆.如何修复此代码,以便获得免费大小?

android diskspace android-sdcard

89
推荐指数
10
解决办法
8万
查看次数

在Android Studio中集成ZXing

我将开始解释我所做的所有步骤,最后是什么问题.

  1. 下载ZXing-2.2 https://code.google.com/p/zxing/downloads/list
  2. 全部在zxing-2.2中提取.
  3. 下载并安装Apache Ant http://www.youtube.com/watch?v=XJmndRfb1TU
  4. 使用Windows Commandline(Run-> CMD)导航到解压缩的目录
  5. 在命令行窗口中 - 输入'ant -f core/build.xml'按回车键,让Apache发挥作用

此刻就像将ZXing库直接集成到我的Android应用程序中

但Wooops,"Buildfile:core\build.xml不存在!构建失败.确定.6.导入ZXing - 缺少core/build.xml

现在是的,我有我的core.jar.

  1. 打开Android Studio,文件 - >导入项目 - >选择/ android/in /zxing-2.2/ - >从现有源创建项目 - >项目名称:andoid - >源文件...全部选中下一步 - >库(不能什么都不做)下一步 - >模块(android检查)下一步 - > SDK 1.7下一步 - >完成

使用Project Open - > Build - > Rebuild项目

100个错误19个警告

文件 - >项目结构 - >库 - >添加 - > Java - >选择我之前创建的core.jar和OK - >库'core'将添加到所选模块中.(android)确定 - >在项目结构对话框中单击确定.

构建 - >重建项目

15个错误20个警告

所有错误都是错误:需要持续表达式,我在android中的ZXing项目的Switch案例中看到错误 我改变了所有 …

android zxing android-studio

88
推荐指数
3
解决办法
14万
查看次数

Jenkins脚本化管道或声明性管道

我正在尝试将旧式项目基础工作流转换为基于Jenkins的管道.在浏览文档时,我发现有两种不同的语法命名scripteddeclarative.比如declarative最近的Jenkins web 语法发布(2016年底).虽然有一个新的语法版本,但Jenkins仍然支持脚本语法.

现在,我不确定这两种类型中哪一种最适合.scripted语法很快就会被弃用?那么declarativeJenkins管道的未来会是什么?

任何可以分享关于这两种语法类型的想法的人.

continuous-integration jenkins jenkins-pipeline

87
推荐指数
5
解决办法
5万
查看次数

画布上的可绘制图像

如何在画布上获取图像以便在该图像上绘图?

android android-canvas android-drawable

86
推荐指数
5
解决办法
15万
查看次数

如何在没有IB的情况下在右侧的UINavigationbar中添加2个按钮?

如何在UINavigationBar没有XIB 的情况下添加2个按钮?
2个按钮应对齐在右侧UINavigationBar.

我知道如何添加一个按钮,但两个怎么样?

uibutton uinavigationcontroller ios

85
推荐指数
9
解决办法
6万
查看次数

如何在不使用Web应用程序的情况下完全使用JavaScript编写iPhone应用程序?

我不想花时间学习Obj-C.我花了7年多的时间做网络应用程序编程.难道不应该有办法使用WebView,只需在javascript中编写整个应用程序,从项目资源中提取文件?

javascript objective-c ios

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

管理IDE和OS之间的键盘快捷方式冲突(Ubuntu)

我正在使用IntelliJ IDEA,但我认为这适用于任何IDE.

在IDEA中,一些非常有用的键盘快捷键与Ubuntu键盘快捷冲突.一些例子:

  • Ctrl+ Alt+L:格式化源代码(映射到Ubuntu中的"锁屏")
  • Ctrl+ Alt+Left:向后导航(映射到Ubuntu中"切换到当前工作空间左侧的工作空间")
  • ...

我已经使用Ubuntu很长一段时间了,我习惯了这些快捷方式.我一直使用它们在工作区之间切换,锁定我的会话......同时,我知道IntelliJ快捷方式有多么有用,我想尽量避免使用鼠标.

目前,我对"格式源代码"的解决方法是Alt+ D(打开"代码"菜单),然后是"R"("重新格式化代码").它工作正常,因为我不经常格式化代码,但它可能会更好.但是,Ctrl+ Alt+Left没有真正的替代方案.

您如何在IDE中管理这些冲突?

您是否只是将所有冲突的IDE键盘快捷键重新映射到其他内容(然后在与具有不同快捷方式的同事进行成对编程时丢失...)?

您是否重新映射Linux键盘快捷键(即使您已"使用"它们)?

有没有办法让键盘快捷键"上下文"?通过这个,我的意思是:在编码时点击一个键进入"IDEA模式"(所有冲突的Ubuntu快捷键暂时停用),再次点击键返回"标准模式"(Ubuntu快捷键被激活).

您对如何管理此问题有任何其他想法/提示吗?

ide ubuntu keyboard-shortcuts intellij-idea

84
推荐指数
5
解决办法
3万
查看次数

如何在Android 5.0(Lollipop)中以编程方式回复来电?

当我尝试为来电创建自定义屏幕时,我正在尝试以编程方式接听来电.我使用以下代码但它在Android 5.0中不起作用.

// Simulate a press of the headset button to pick up the call
Intent buttonDown = new Intent(Intent.ACTION_MEDIA_BUTTON);             
buttonDown.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_HEADSETHOOK));
context.sendOrderedBroadcast(buttonDown, "android.permission.CALL_PRIVILEGED");

// froyo and beyond trigger on buttonUp instead of buttonDown
Intent buttonUp = new Intent(Intent.ACTION_MEDIA_BUTTON);               
buttonUp.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_HEADSETHOOK));
context.sendOrderedBroadcast(buttonUp, "android.permission.CALL_PRIVILEGED");
Run Code Online (Sandbox Code Playgroud)

android phone-call incoming-call android-5.0-lollipop

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

如何将字符串转换为Perl中的数字?

如何将包含数字的字符串转换为Perl中的数字值?

string floating-point perl

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