我有一个RadioButton:
<RadioButton
android:id="@+id/rdioA"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checked="@{!q.b}"
android:onCheckedChanged="@{(cb, isChecked) -> {if (isChecked) q.setB(false)}}"
android:text="AAA"/>
Run Code Online (Sandbox Code Playgroud)
变量“ q”定义为:
<data>
<import type="android.view.View"/>
<variable name="q" type="com.example.Q"/>
</data>
Run Code Online (Sandbox Code Playgroud)
Q.java中的函数是:
public void setB(boolean b) {
this.b = b;
}
Run Code Online (Sandbox Code Playgroud)
我得到的编译错误是:
/Users/../view_d.xml
Error:(60, 53) Syntax error: extraneous input '=' expecting {<EOF>, '.', '::', '[', '+', '-', '*', '/', '%', '<<', '>>>', '>>', '<=', '>=', '>', '<', 'instanceof', '==', '!=', '&', '^', '|', '&&', '||', '?', '??'}
Error:Execution failed for task ':app:compileDevDebugJavaWithJavac'.
> java.lang.RuntimeException: Found data binding errors.
Run Code Online (Sandbox Code Playgroud)
如果我用 …
我有以下布局:
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp">
<TextView
android:id="@+id/itemKey"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
app:layout_constraintStart_toStartOf="parent"
tools:text="Recipient:"/>
<TextView
android:id="@+id/itemValue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/black"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintLeft_toRightOf="@id/itemKey"
tools:text="loooooooooonnnnnnngemmmmmmmmaaaaaaaiiilll@gmail.com"/>
</android.support.constraint.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)
这就是它的显示方式:
真的应该是:
我需要什么来解决这个问题?我试过使用指南和水平偏差,也试过用 RelativeLayout 而不是 ConstraintLayout 来约束它,但到目前为止没有任何帮助。
我在Menus和MenuItems方面遇到了问题.每当我点击一个MenuItem,item.getItemId()总是返回0.有谁知道为什么?
public class MenuAct extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.event_activity, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
Log.d("event", "ItemSelected=" + item.getItemId());// always 0
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
/res/menu/event_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:name="@+id/evt_createEvent"
android:title="1" />
<item
android:name="@+id/menu_evt_abortCreate"
android:title="2" />
<item
android:name="@+id/menu_evt_saveChanges"
android:title="3" />
<item
android:name="@+id/menu_evt_deleteEvent" …Run Code Online (Sandbox Code Playgroud) 我刚刚开始使用Mockito,所以不太熟悉它。我嘲笑这样的对象:
CInjectorFactory mockFactory = mock(CInjectorFactory.class);
Run Code Online (Sandbox Code Playgroud)
现在,如果我不存根某个特定函数,则该函数不会调用原始CInjectorFactory的函数,并且会得到一个“空”值:
public CMainActivityHelper getMainActivityHelper()
Run Code Online (Sandbox Code Playgroud)
这是否意味着仅存根函数可用于模拟对象?那个被嘲笑的对象没有继承被嘲笑的对象的原始功能吗?
谢谢。