- Siêu lớp và danh mục iOS/Objective-C
- object-c - -1001 lỗi khi NSURLSession vượt qua httpproxy và /etc/hosts
- java - Nhận địa chỉ url bằng lớp mạng
- ios - Âm thanh không phát trong thông báo đẩy
Trong một thời gian, tôi đã cố gắng đặt một chuỗi lớn (trên 25k ký tự) thành Chế độ xem văn bản
, nhưng tôi vẫn nhận được kết quả đầu ra "STRING_TOO_LARGE".
Tôi đã đọc ở đâu đó rằng việc đặt chuỗi khi chạy có thể giúp giải quyết vấn đề, vì vậy tôi đã sửa đổi mã của mình nhưng có vẻ như nó không giúp ích gì. Tôi cũng đã thử trực tiếp trong setText()
Đặt ID tài nguyên trong , nhưng điều này không có hiệu lực.
tôi ở đây Hoạt động
Sử dụng phương pháp sau để hiển thị hộp thoại điều khoản
:
khoảng trống riêng tư showTermsPopup() {
Thuật ngữ hội thoạiDialog = new Dialog(this);
termsDialog.setContentView(R.layout.terms_dialog);
termsDialog.getWindow().setLayout(WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT);
// Hủy hộp thoại nếu bạn chạm vào nền
termsDialog.setCanceledOnTouchOutside(true);
//Thêm chuỗi thuật ngữ vào hộp thoại
Thuật ngữ TextViewText = termsDialog.findViewById(R.id.termsTextView);
Thuật ngữ chuỗi = getResources().getString(R.string.terms);
termsText.setText(điều khoản);
// Hiển thị hộp thoại
termsDialog.show();
}
Đây là điều khoản_dialog.xml
tài liệu:
<>
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white"
android: đệm = "8dp"
android:scrollbarSize="0dp">
android:id="@+id/termsTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
Và cái này là kết quả tôi nhận được (thông tin nhạy cảm được làm trắng).
câu trả lời hay nhất
Như liên kết @HB chỉ ra. Hãy cho tôi biết, tệp APK của bạn không được có chuỗi lớn hơn 32.767 byte (được mã hóa bằng UTF-8).
Vì vậy, những gì tôi đã làm là trong một tập tin có tên điều khoản.txt
Tạo một tệp txt trong thư mục Nội dung và đặt chuỗi vào đó. Sau đó, sử dụng hàm sau để chuyển đổi tệp thành chuỗi:
Chuỗi riêng tư getTermsString() {
Thuật ngữ StringBuilderString = new StringBuilder();
Trình đọc BufferedReader;
thử {
reader = BufferedReader mới(
inputStreamReader mới(getAssets().open("terms.txt")));
Chuỗi str;
while ((str = reader.readLine()) != null) {
termsString.append(str);
}
reader.close();
trả về termsString.toString();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
Tôi chỉ gán nó cho Chế độ xem văn bản
.
Về java - TextView hiển thị STRING_TOO_LARGE, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/51732252/
Lâu nay tôi đã cố gắng đặt một chuỗi lớn (trên 25k ký tự) thành TextView nhưng tôi vẫn nhận được kết quả đầu ra "STRING_TOO_LARGE". Tôi đã đọc ở đâu đó rằng việc đặt chuỗi khi chạy có thể giúp giải quyết vấn đề,
Khi tôi thêm plugin vào dự án của mình để hỗ trợ Kotlin, sau đó plugin sẽ đọc chuỗi lớn từ tệp string.xml của dự án của tôi. Nó cho tôi lỗi sau đây. Lỗi: Thay vào đó, chuỗi quá lớn để được mã hóa bằng UTF-8
Lỗi trình biên dịch Java: Chuỗi quá lớn để mã hóa bằng UTF-8, thay vào đó đã đổi thành "STRING_TOO_LARGE". Tôi muốn chỉ ra rằng tôi không có chuỗi dài cũng như không có thể vẽ lớn hơn 32kb (tối đa 3,7kb)
Tôi hiện đang gặp một số vấn đề khi sử dụng Android Studio vì gần đây tôi đã bắt đầu sử dụng "Nội dung Vector". Tôi đã làm mọi thứ cần thiết để hiển thị chúng một cách chính xác trong ứng dụng của mình (sử dụng app:srcC trong xml
Lỗi xảy ra khi tôi dọn dẹp dự án Android trong studio android, tôi đã quay lại cam kết trước đó hoặc một nhánh khác, đã có sẵn vài ngày trước, nhưng bây giờ tôi gặp lỗi này. Tôi đã kiểm tra câu hỏi này và nó không thêm câu hỏi lớn nào vào dự án của tôi
Tôi là một lập trình viên xuất sắc, rất giỏi!