我尝试在1个应用程序中构建扫描仪和生成器。当我按下发电机按钮时,它突然崩溃。我的日志中没有任何错误或警告。
这是我的生成器代码:
public class GeneratorActivity extends AppCompatActivity {
EditText text;
Button gen_btn;
ImageView image;
String text2Qr;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_generator);
text = findViewById(R.id.text);
gen_btn = findViewById(R.id.gen_btn);
image = findViewById(R.id.image);
gen_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
text2Qr = text.getText().toString().trim();
MultiFormatWriter multiFormatWriter = new MultiFormatWriter();
try{
BitMatrix bitMatrix = multiFormatWriter.encode(text2Qr, BarcodeFormat.QR_CODE,200,200);
BarcodeEncoder barcodeEncoder = new BarcodeEncoder();
Bitmap bitmap = barcodeEncoder.createBitmap(bitMatrix);
image.setImageBitmap(bitmap);
}
catch (WriterException e){
e.printStackTrace();
}
}
});
}}
MainActivity代码:
public class MainActivity extends AppCompatActivity {
Button gen, scan;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
gen = findViewById(R.id.gen);
scan = findViewById(R.id.scan);
gen.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent gIntent = new Intent(MainActivity.this, GeneratorActivity.class);
startActivity(gIntent);
}
});
scan.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent rIntent = new Intent(MainActivity.this, ReaderActivity.class);
startActivity(rIntent);
}
});
}}
有人知道如何解决这个问题吗?请帮帮我。
更新
这是我的生成器的xml代码:
<EditText
android:id="@+id/text"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginBottom="415dp"
android:layout_marginTop="50dp"
android:hint="@string/enter_text_to_generate"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/view" />
<Button
android:id="@+id/gen_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="33dp"
android:text="@string/generate"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/text" />
<view
android:id="@+id/view"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginBottom="48dp"
android:layout_marginTop="155dp"
android:background="@android:color/black"
app:layout_constraintBottom_toTopOf="@+id/text"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="0dp"
android:layout_height="293dp"
android:layout_below="@+id/view"
android:layout_marginEnd="10dp"
android:layout_marginStart="10dp"
android:layout_marginTop="188dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/image"
android:layout_width="348dp"
android:layout_height="match_parent"
android:contentDescription="@string/todo" />
</LinearLayout>
我希望这会对我的问题有所帮助:(
更新:这是由我的愚蠢错字修复;)。非常感谢所有回答我这个问题的人。我不能说我多么感激。特别是对于我已经投票给正确答案的人。你真的是英雄!
答案 0 :(得分:0)
请不要投票。我知道这不是一个解决方案,但这肯定有助于我们确定问题。
这是关于在logcat中查找错误。可能曾经 Ricardo F. Seikka 分享logcat,我可以删除这个答案。
在Windows(10)上,这是我在logcat没有捕获错误时所做的事情(实际发生的是当出现错误时logcat被清除(仅针对某些错误)并且因此生成了新的logcat我们无法在logcat中看到错误)
@Ricardo F. Seikka(我猜你也在使用Windows)
点击终端
中的命令运行下面的按钮&#34; C:\用户\ QWERTY \应用程序数据\本地\的Android \ SDK \平台工具\ adb.exe&#34; logcat -c
(而不是qwerty添加你的名字/寻找adb.exe)这将清除logcat。 - 单击按钮后,运行以下命令
"C:\Users\Dell\qwerty\Local\Android\sdk\platform-tools\adb.exe" logcat -d > "C:\Users\Dell\qwerty\log.txt"
如果您正在使用任何其他操作系统,请搜索adb.exe并尝试我的建议。
答案 1 :(得分:0)
确定。我遇到了你的问题! (如果在问题中不是拼写错误......)
在您的xml中,您声明了一个名为view
的组件,当正确的View
为大写时:
<View
android:id="@+id/view"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginBottom="48dp"
android:layout_marginTop="155dp"
android:background="@android:color/black"
app:layout_constraintBottom_toTopOf="@+id/text"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
如果它能解决您的问题,请告诉我