2011-10-14 36 views
5

Lưu ý rằng tôi đang sử dụng Mono cho AndroidTham số defStyle của Android TextView bị bỏ qua?

Tôi có một ListView các mặt hàng có thể được mở rộng bằng cách nhấp vào nút "More" ở dưới cùng của danh sách. Danh sách được định nghĩa trong XML nhưng nút nhiều hơn chỉ đơn giản là một TextView có thể nhấp được thêm vào cuối danh sách thông qua AddFooterView. Tôi đang cố gắng áp dụng một phong cách được xác định trước cho TextView được tạo trong thời gian chạy nhưng nó không hoạt động.

mMoreProductsButton = new TextView(this, null, Resource.Style.more_button); 
mMoreProductsButton.Text = "More"; 
mMoreProductsButton.Click += new EventHandler(MoreProductsButton_Click); 
mListView.AddFooterView(mMoreProductsButton); 

tài liệu TextView cho thấy chữ ký này: TextView(Context context, AttributeSet attrs, int defStyle)

defStyle được định nghĩa trong tài liệu như phong cách mặc định để áp dụng cho xem. Một ví dụ tôi thấy ở nơi khác thông qua null như AttributeSet nhưng tôi không chắc chắn nếu đó là hợp lệ hoặc liên quan đến vấn đề của tôi.

tôi thấy lỗi này và không chắc chắn nếu nó có liên quan và hiện tại: http://code.google.com/p/android/issues/detail?id=12683

Bất kỳ lời đề nghị được đánh giá cao!

Trả lời

1

Tôi cũng đã tìm kiếm câu trả lời cho câu hỏi này. Nó có vẻ là một lỗi Android bởi vì tôi không tìm thấy một cách phong cách áp dụng để tạo ra Views. Tại sao bạn không muốn thổi phồng TextView của mình?
Như thế này:

bố trí/my_view.xml

<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:style="@style/more_button" /> 

Hoạt động

TextView mMoreProductsButton = (TextView) getLayoutInflater().inflate(R.layout.my_view, null, false); 

Xin lỗi, tôi không biết nếu nó hoàn toàn khả thi trong Mono.

+0

Đó là khả thi trong Mono và tôi làm điều đó ở nhiều nơi khác, nơi tôi đang lắp ráp các bố cục phức tạp. Trong trường hợp này, có vẻ như lãng phí khi tạo một tài nguyên XML và sau đó tải và thổi phồng nó khi nó chỉ là một TextView đơn giản. Thật lạ với tôi rằng nền tảng Android sẽ không hỗ trợ việc tạo ra các yếu tố theo kiểu động. – dubj

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