Android Studio 3.0.1,Java 8.
这是我的xml文件(布局):
@ViewChild(AppChildComponent) appChildComponent: AppChildComponent
this.engineModal.appChildComponent.function()
此处活动中的java代码( ShoppingDetailsActivity ):
<android.support.constraint.ConstraintLayout
android:id="@+id/contentContainer"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/minusImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@drawable/ic_minus" />
<TextView
android:id="@+id/counterTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="@+id/minusImageView" />
<ImageView
android:id="@+id/plusImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@drawable/ic_plus" />
</android.support.constraint.ConstraintLayout>
但是当活动尝试打开时,我在方法@BindView(R.id.counterTextView)
TextView counterTextView;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.shopping_details);
ButterKnife.bind(this);
init(productId);
}
private void init(int productId) {
setQuantityCounter(quantityCounter);
}
private void setQuantityCounter(int count) {
counterTextView.setText(count);
}
中收到错误:
setQuantityCounter(int count)
答案 0 :(得分:1)
你的问题在这里:
private void setQuantityCounter(int count) { counterTextView.setText(count); }
当您将int
传递给TextView.setText()
时,假设您传递了一个字符串资源标识符......类似于R.string.my_string
(int
引擎盖下。)
看起来你只是想显示一个计数。 最简单的方式(尽管不是严格意义上的最佳方式)将是这样的:
private void setQuantityCounter(int count) {
counterTextView.setText("" + count);
}