小编Ben*_*dik的帖子

在iPhone上执行prolog代码

我目前需要在我正在制作的应用程序中执行prolog代码.我知道Apple可能永远不会在App Store中允许这样的东西,但这也不是意图.这是一个永远不会到达App Store的私人项目.

目的

在这种情况下,prolog用于描述对象(例如电话)及其属性.将使用prolog脚本中指定的坐标使用OpenGL绘制对象.使用prolog的原因是我需要能够向程序查询该对象具有的一些功能,并且对此进行了大量修改.结论:我"需要"从我的应用程序查询prolog脚本.

可能的解决方案

  • 嵌入用C编写的现有实现.我不确定这是否可行.
  • 在另一台机器上执行prolog代码并使用网络查询prolog.
  • 似乎可以在应用程序内部运行某种Ruby VM(据我所知,shinycocos使用它),这可以用来运行Ruby Prolog实现之一吗?
  • 找一些Prolog的替代品.这需要给我一些与prolog相同的可能性.

可悲的是,谷歌让我几乎没有任何结果,所以我觉得我可能在这个项目上很孤单.如果有人有任何经验或线索,我会非常感激.

iphone prolog logic-programming

16
推荐指数
2
解决办法
4485
查看次数

面向对象的图数据结构实现

我最近一直在阅读相当多的图形数据结构,因为我打算编写自己的UML工具.据我所知,我想要的可以建模为由顶点和边组成的简单图形.顶点将具有一些值,并且最好表示为对象.据我所知,边缘不需要既不是定向的也不是加权的,但我不想选择一种以后不可能包含这些属性的实现.

受过纯面向对象编程的教育,我想到的第一件事就是按类表示顶点和边,例如:

Class: Vertice
    - Array arrayOfEdges;
    - String name;

Class: Edge
    - Vertice from;
    - Vertice to;
Run Code Online (Sandbox Code Playgroud)

这使我有可能在以后引入权重,方向等.现在,当我阅读实现图表时,似乎这是一个非常罕见的解决方案.Stack Overflow上的早期问题提出了邻接列表和邻接矩阵,但对图表来说是全新的,我很难理解为什么这比我的方法更好.

我的应用程序最重要的方面是能够轻松计算单击和移动的顶点,以及在顶点之间添加和删除顶点和边的功能.这在一个实现中比另一个更容易实现吗?

我选择的语言是Objective-C,但我不相信这应该是有意义的.

graph objective-c data-structures

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

片段和意图过滤器

我们都知道如何在 AndroidManifest.xml 中使用意图过滤器来声明诸如搜索、推送等活动的功能。我目前使用这样的意图过滤器以以下方式注册自定义 URL 方案:

<activity android:name="NameOfActivity" >
    <intent-filter >
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWABLE" />
        <data
            android:host=""
            android:scheme="customscheme" />
    </intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)

这一切都非常有效,直到我决定将所有活动转换为片段,因为我需要在表格上以不同的方式显示用户界面。现在,在声明为或更大的设备上,我没有在活动之间切换,而是根据要求删除和添加新片段。这个选择是因为屏幕的左侧总是显示相同的内容,所以我没有将此内容添加到所有活动中,而是更改了片段。

这里的问题是,虽然意图过滤器在手机上启动了正确的活动,但这个活动不应该在平板电脑上启动。相反,我想在片段中处理这个 URL。截至目前,我认为没有办法解决这个问题。一个想法是以编程方式添加意图过滤器,但经过一些研究,我无法弄清楚这是否可行。另一个想法是以某种方式在片段上添加意图过滤器,但这将不起作用,因为如果没有托管它的活动,片段将无法启动。

简而言之:在手机上,我需要一个活动来处理意图过滤器,但在平板电脑上,我需要另一个活动来处理意图过滤器。

有没有办法做到这一点?

android android-manifest android-intent

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

活动测试教程的NullPointerException

我目前正在尝试活动测试教程(在这里找到),并且遇到了问题.似乎每当我尝试在UIThread中调用某些东西时,我都会得到一个java.lang.NullPointerException.

public void testSpinnerUI() {
    mActivity.runOnUiThread( new Runnable() {  
        public void run() {  
            mSpinner.requestFocus();
        }  
    });  
}
Run Code Online (Sandbox Code Playgroud)

这给了我:

不完整:java.lang.NullPointerException

没有别的.我现在在两个不同的样品上尝试了这个,结果相同.我试着围绕mSpinner.requestFocus()调用使用try/catch子句,似乎mSpinner在线程内是null.我已经使用在同一个示例中找到的setUp()函数正确设置了它,并且快速assertNotNull(mSpinner)向我显示在setUp()函数之后mSpinner实际上不是null.这可能是什么原因?

编辑; 好的,已经完成了一些测试.似乎正在测试的应用程序在每个测试之间重置.这基本上使我必须在每次测试之间重新实例化所有变量.这是正常的吗?

eclipse android

3
推荐指数
1
解决办法
2395
查看次数