我在Arch上使用来自社区回购的VirtualBox和来自AUR的Genymotion.每当我想要启动虚拟设备时,它会说:
无法加载VirtualBox引擎.
在启动Genymotion之前,请确保已正确安装.
有关更多信息,请访问:https: //cloud.genymotion.com/page/faq/#vbox
我已经重新安装了一切似乎没有用的东西.
当我使用
#vboxreload
Run Code Online (Sandbox Code Playgroud)
加载"vboxnetadp vboxnetflt vboxpci vboxdrv"并且genymotion适用于此会话,直到我重新启动系统.
我在/etc/modules-load.d/上使用virtualbox.conf来加载"vboxnetadp vboxnetflt vboxpci vboxdrv".
$cat /etc/modules-load.d/virtualbox.conf
vboxdrv\nvboxnetflt\nvboxnetadp\nvboxpci
Run Code Online (Sandbox Code Playgroud)
我不是linux破解但我认为/etc/modules-load.d/virtualbox.conf会自动加载模块 - 所以我不需要在每次重启后使用#vboxreload吗?
我开始尝试编写一个Android应用程序.我想想象pi的Monte-Carlo-Approximation.因此,我首先想要在视图上绘制一个圆圈,但我不会让它工作!我试图创建我自己的"CircleView"类,它扩展了"View"并覆盖了onDraw(..)方法,就像它在这里解释的那样:如何在Android中用画布绘制圆圈?
这是我的CircleView类
public class CircleView extends View {
public CircleView(Context context) {
super(context);
}
protected void onDraw(Canvas canvas){
super.onDraw(canvas);
Paint paint = new Paint();
paint.setColor(150);
canvas.drawCircle(50,50,20,paint);
}
}
Run Code Online (Sandbox Code Playgroud)
我已使用以下XML代码将CircleView插入到LinearLayout中
<com.tak3r07.montecarlopi.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/circleView"
android:layout_weight="1"/>
Run Code Online (Sandbox Code Playgroud)
(顺便说一句Android Studio在右侧的XML视图中告诉我:"渲染问题自定义视图CircleView没有使用2或3参数的View构造函数; XML属性不起作用")
该应用程序崩溃时出现以下日志:http://pastebin.com/Gv1GaHtX
谁能说出我做错了什么?
我认为这个设置会创建一个带有显示圆圈的视图的活动.
问候
编辑:通过在CircleView中添加2和3参数构造函数来修复崩溃(请参阅/sf/answers/965822021/)
但是现在我仍然没有在活动中看到任何Circle
今天我试图使用新的android RecyclerView.我创建了一个带有空白活动的新项目,并在其布局中添加了以下内容:
<android.support.v7.widget.RecyclerView
android:id="@+id/my_recycler_view"
android:scrollbars="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
Run Code Online (Sandbox Code Playgroud)
在gradle构建依赖项中,我添加了:
compile 'com.android.support:support-v4:21.0.0'
compile 'com.android.support:recyclerview-v7:21.+'
compile 'com.android.support:cardview-v7:21.+'
Run Code Online (Sandbox Code Playgroud)
但activity_main.xml呈现仍然显示以下错误:
Rendering Problems The following classes could not be instantiated:
- android.support.v7.widget.RecyclerView (Open Class, Show Exception)
Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE Exception Details java.lang.UnsupportedOperationException: Unsupported Service: accessibility at com.android.layoutlib.bridge.android.BridgeContext.getSystemService(BridgeContext.java:465
Run Code Online (Sandbox Code Playgroud)
我似乎没有在网络上找到解决方案,因为每个人都说"在你的gradle构建中实现以下依赖项:..."我已经添加了.
有人能提供解决方案吗?
关心Tak3r07
编辑:onCreate:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
Run Code Online (Sandbox Code Playgroud) 我正在使用RecyclerView,并且只要长按RecyclerView中的项目,就想打开AlertDialog.
在RecyclerView的ViewHolder中,我实现了clicklistener
@Override
public boolean onLongClick(View v) {
//Open Alert dialog to delete item
AlertDialog.Builder alert = new AlertDialog.Builder(context);
...
}
Run Code Online (Sandbox Code Playgroud)
我可以在这里阅读:http://goo.gl/Kd1c7i一个需要通过"MyActivity.this"到AlertDialog.Builder构造函数,但由于ViewHolder是RecyclerView适配器的静态部分,我不能引用"MyActivity.这个".因此我仍然得到错误:
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
Run Code Online (Sandbox Code Playgroud)
那么如何从不扩展Activity的类创建AlertDialog?
@Edit:更多代码以获取更多信息:
这是我的RecyclerView Adapter构造函数:
RecyclerViewCourseAdapter(ArrayList<Course> courses, Context context) {
this.context = context;
if (courses == null) {
throw new IllegalArgumentException("courses ArrayList must not be null");
}
mCourseArrayList = courses;
}
Run Code Online (Sandbox Code Playgroud)
我将给定的上下文存储为Adapter类中的private:
private Context context;
Run Code Online (Sandbox Code Playgroud)
这是我的ViewHolder:
public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener,View.OnLongClickListener …Run Code Online (Sandbox Code Playgroud)