我在IntelliJ 13中使用Maven导入了一个库(JBox2D),用于android项目.Maven没有给我任何错误消息,所以我假设库已正确导入.
但是,一旦我尝试使用库中的类,我就会得到"无法解析符号".IntelliJ不像往常那样提供添加import语句的选项.
我该怎么办?
我正在关注Mockito上的Vogella教程并立即陷入困境.IntelliJ显示cannot resolve method 'when'以下课程.
...我错过了什么?
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.mockito.runners.MockitoJUnitRunner;
@RunWith(MockitoJUnitRunner.class)
public class MockitoTest {
@Test
public void test1() {
MyClass test = Mockito.mock(MyClass.class);
// define return value for method getUniqueId()
test.when(test.getUniqueId()).thenReturn(43);
// TODO use mock in test....
}
}
Run Code Online (Sandbox Code Playgroud) 我想将一个标识ArrayList中的对象的UUID传递给intent,以便接收活动可以使用id在Arraylist中找到该对象.
这是可能的,还是有更好的方法来实现相同的结果?
(首先,我知道这个问题已被多次询问,但我没有找到适用的答案)
我有一个片段创建如下:
inflater.inflate ( R.layout.fragment_task_ongoing, container, false );
Run Code Online (Sandbox Code Playgroud)
我想要的是在FragmentActivity中使用findFragmentById,如下所示:
TaskActiveFragment f = ( TaskActiveFragment ) getSupportFragmentManager ().findFragmentById ( R.id.fragment_task_ongoing );
Run Code Online (Sandbox Code Playgroud)
不幸的是,这返回null.明显的原因是用作参数的id是RelativeLayout被膨胀的id,而不是Fragment.布局的第一行:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fragment_task_ongoing"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="16dp"
android:paddingRight="16dp" >
Run Code Online (Sandbox Code Playgroud)
那么,我如何找出片段的 ID ?如果它没有ID,我该如何给它?编程方式?XML?
编辑:我的片段被添加到FragmentStatePagerAdapter,然后将其添加到ViewPager.
我有一个导航抽屉,列表项的样式设置为R.layout.drawer_list_item.
mDrawerList.setAdapter ( new ArrayAdapter<String> ( this, R.layout.drawer_list_item, mDrawerTitles ) );
Run Code Online (Sandbox Code Playgroud)
但是,似乎定义列表项外观的XML只能包含一个textview.我无法在textview下面添加一个视图项,我无法添加布局.那么,我该如何添加分频器呢?
列表项样式:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:paddingBottom="16dp"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
Run Code Online (Sandbox Code Playgroud)
除法:
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"/>
Run Code Online (Sandbox Code Playgroud) 我已经导入了一个将JodaTime用于IntelliJ的旧项目.除了依赖于以下内容的FromString和ToString 之外,一切正常:
import org.joda.convert.FromString;
import org.joda.convert.ToString;
Run Code Online (Sandbox Code Playgroud)
由于某些原因,这些进口只有这些,无法解决.
怎么了?
我在一本书中发现了这一点,但我没有得到它的作用:
int index = 1;
...
getArray() [index=2]++;
Run Code Online (Sandbox Code Playgroud)
[指数= 2] ++; 看起来很奇怪,但编译.更奇怪的是,如果删除了++,它就变为无效,即使据我所知,++在这种情况下什么都不做(值总是2).
那么,在这种情况下,后增量运算符的重点是什么(因为它不增加值),为什么括号和为什么只有在最后添加post-inc时语句才合法?
有人可以解释这个神秘的语法是什么以及它的作用是什么?