2010-08-03 71 views
13

Cả hai hoạt động này trong cùng một góiERROR Không gói nhận dạng khi nhận được giá trị cho số tài nguyên

hoạt động thứ hai sử dụng bố trí tập tin thứ hai

setContentView(R.layout.main2); 

lỗi trên đường dây này trong Second_Activity.

EditText text1 = (EditText) findViewById(R.id.EditText03); 

Đây là tệp bố cục cho Second_Activity.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:id="@+id/LinearLayout01" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 

     <TextView 
      android:id="@+id/TextView01" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Answer Is : " > 
     </TextView> 

     <EditText 
      android:id="@+id/EditText03" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" > 
     </EditText> 
    </LinearLayout> 

    <Button 
     android:id="@+id/Button01" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:onClick="onClick" 
     android:text="Calling an intent" > 
    </Button> 

</LinearLayout> 

Dưới đây là các lỗi trong cửa sổ LogCat

08-01 19:32:20.340: WARN/ResourceType(8875): No package identifier when getting value for resource number 0x00000005 
08-01 19:32:20.390: ERROR/AndroidRuntime(8875): Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x5 

mail.xml

<TextView 
    android:id="@+id/TextView01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:text="First Number : "> 
</TextView> 

<EditText 
    android:id="@+id/EditText01" 
    android:inputType="number" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
</EditText> 

<TextView 
    android:id="@+id/TextView02" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:text="Second Number: "> 
</TextView> 

<EditText 
    android:id="@+id/EditText02" 
    android:inputType="number" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
</EditText> 

secondscreen.xml

<TextView 
    android:id="@+id/TextView03" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:text="Answer Is : "> 
</TextView> 

<EditText 
    android:id="@+id/main2EditText01" 
    android:inputType="number" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
</EditText> 

manifest file xml

<activity android:name=".ActivityTwo"/> 

+0

Có điều gì đó sai về cú pháp với các tệp XML của bạn đang dừng các id của bạn trong R được tạo ra. Bạn có thể đăng phần còn lại của các XML của mình không? Có thể bạn đang thiếu thẻ đóng hoặc thứ gì đó. –

+0

mới ở đây không chắc chắn làm thế nào để đặt các tập tin xml như một câu trả lời –

+0

Oh; dán nó trong câu hỏi của bạn là tốt. :) –

Trả lời

91

Tôi đã nhận thông báo lỗi tương tự này khi tôi cố gắng sử dụng TextView.setText đi qua một char thay vì một String. Điều này có ý nghĩa vì char sẽ được thăng hạng thành int có nghĩa là tôi thực sự gọi số

TextView.setText(int resId); 

Và vì không có tài nguyên với giá trị đó, nó sẽ không hoạt động.

+5

Cảm ơn vì điều này. Tôi đã cố gắng để gửi một số nguyên với setText(). Sử dụng Integer.toString đã làm cho các trick cho tôi. Người yêu cầu –

+3

nên đánh dấu điều này là chính xác ... – fandang

+0

Đây là lý do thực sự cho câu hỏi này. Tôi đã không di chuyển xuống và cố gắng với câu trả lời được chấp nhận. Nhưng tôi đã hình dung nó cuối cùng và đến đây để đặt nó như một câu trả lời. Nhưng @ John đã đặt nó :) Tôi đã sử dụng TextView.setText (String.valueOf (myIntValue)); –

7

Khi bạn chuyển số nguyên sang số TextView.setText() để hiển thị android giả định đó là id tài nguyên và đó là lý do bạn nhận được Resource$NotFoundException. Hãy thử chuyển đổi int thành String trước khi chuyển nó đến TextView.setText(): TextView.setText(String.valueOf(i)).

7

Chỉ cần cho các giao thức, Bạn cũng có thể sử dụng:

TextView.setText("" + intVar) thay vì TextView.setText(intVar)

2

Đối với tôi, tôi đã phải đi trong file XML cho nút. Ở đó tôi nhận thấy một giá trị chuỗi mã hóa cứng. Tôi đã phải loại bỏ, và tôi cũng đã phải sử dụng Textview.setText("" + intVar);

34

mặt với lỗi tương tự

cuối cùng tôi tìm thấy nó không phải là một lỗi do bố trí xml của bạn

nơi nào đó trong mã của bạn thiết lập TextView.setText(int)

thử TextView.setText(Integer.toString(int));

+0

Tôi đã chiến đấu này cho một giờ tốt, hóa ra tôi đã làm tất cả mọi thứ tốt ngoại trừ đi qua một String để setText(), cảm ơn! – Roberto

0

Tôi đã sử dụng thư viện Picasso để tải hình ảnh từ mạng. Các url trong một ArrayList tôi đã không sử dụng arraylist.get() để có được vị trí của url trong ArrayList.

0

Gần đây tôi đã gặp sự cố này, khi tôi cố gắng tích hợp SocialAuth libray với ứng dụng Android của mình bằng Android Studio. Vấn đề của tôi là gì, một số tài nguyên của tôi như biểu tượng facebook, nằm trong thư mục mipamp. Tôi đã chuyển nó sang drawables thư mục và sự cố đã được khắc phục.

0

Đó là do lỗi định dạng. Bạn phải thử điều này- TextView.setText (Integer.toString (variable_name));

Ở đây toString được sử dụng để chuyển đổi số nguyên thành chuỗi để hiển thị văn bản.

+0

nó không trả lời câu hỏi ở tất cả ... vấn đề ở đây rõ ràng là về id không được tạo ra đúng cách – Benjamin

Các vấn đề liên quan