2012-11-30 28 views
3

我對以下情況模糊不清,我創建了一個LinearLayout來顯示手機中的聯繫人列表。但是,我無法弄清楚我可以在哪裏設置LinearLayout中的文本變得更大!請幫助,謝謝!Android:如何更改爲ListView中的文本大小變得更大?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <ListView android:layout_width="wrap_content" 
       android:id="@+id/contactList" 
       android:layout_height="0dp" 
       android:padding="10dp" 
       android:textSize="200sp" 
       android:layout_weight="10"/> 
    <CheckBox android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/showInvisible" 
       android:text="@string/showInvisible"/> 
    <Button android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/addContactButton" 
      android:text="@string/addContactButtonLabel"/> 
</LinearLayout> 

的contactmanager.xml如下:

package com.example.android.contactmanager; 

import android.app.Activity; 
import android.content.Intent; 
import android.database.Cursor; 
import android.net.Uri; 
import android.os.Bundle; 
import android.provider.ContactsContract; 
import android.util.Log; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.Button; 
import android.widget.CheckBox; 
import android.widget.CompoundButton; 
import android.widget.CompoundButton.OnCheckedChangeListener; 
import android.widget.ListView; 
import android.widget.SimpleCursorAdapter; 

public final class ContactManager extends Activity 
{ 

    public static final String TAG = "ContactManager"; 

    private Button mAddAccountButton; 
    private ListView mContactList; 
    private boolean mShowInvisible; 
    //public BooleanObservable ShowInvisible = new BooleanObservable(false); 
    private CheckBox mShowInvisibleControl; 

    /** 
    * Called when the activity is first created. Responsible for initializing the UI. 
    */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     Log.v(TAG, "Activity State: onCreate()"); 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.contact_manager); 

     ArrayAdapter<String> filesAdapter = new ArrayAdapter<String>(this, 
     R.layout.simplest_list_item_1, topFilesArray); 
     filesList.setDivider(null); 

     // Obtain handles to UI objects 
     mAddAccountButton = (Button) findViewById(R.id.addContactButton); 
     mContactList = (ListView) findViewById(R.id.contactList); 
     mShowInvisibleControl = (CheckBox) findViewById(R.id.showInvisible); 

     // Initialise class properties 
     mShowInvisible = false; 
     mShowInvisibleControl.setChecked(mShowInvisible); 

     // Register handler for UI elements 
     mAddAccountButton.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       Log.d(TAG, "mAddAccountButton clicked"); 
       launchContactAdder(); 
      } 
     }); 
     mShowInvisibleControl.setOnCheckedChangeListener(new OnCheckedChangeListener() { 
      public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
       Log.d(TAG, "mShowInvisibleControl changed: " + isChecked); 
       mShowInvisible = isChecked; 
       populateContactList(); 
      } 
     }); 

     // Populate the contact list 
     populateContactList(); 
    } 

    /** 
    * Populate the contact list based on account currently selected in the account spinner. 
    */ 
    private void populateContactList() { 
     // Build adapter with contact entries 
     Cursor cursor = getContacts(); 
     String[] fields = new String[] { 
       ContactsContract.Data.DISPLAY_NAME 
     }; 
     SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.contact_entry, cursor, 
       fields, new int[] {R.id.contactEntryText}); 
     mContactList.setAdapter(adapter); 
    } 

    /** 
    * Obtains the contact list for the currently selected account. 
    * 
    * @return A cursor for for accessing the contact list. 
    */ 
    private Cursor getContacts() 
    { 
     // Run query 
     Uri uri = ContactsContract.Contacts.CONTENT_URI; 
     String[] projection = new String[] { 
       ContactsContract.Contacts._ID, 
       ContactsContract.Contacts.DISPLAY_NAME 
     }; 
     String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '" + (mShowInvisible ? "0" : "1") + "'"; 
     //String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '" + (mShowInvisible.get() ? "0" : "1") + "'"; 
     String[] selectionArgs = null; 
     String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC"; 

     return this.managedQuery(uri, projection, selection, selectionArgs, sortOrder); 
    } 

    /** 
    * Launches the ContactAdder activity to add a new contact to the selected account. 
    */ 
    protected void launchContactAdder() { 
     Intent i = new Intent(this, ContactAdder.class); 
     startActivity(i); 
    } 


} 

的contact_entry.xml

<?xml version="1.0" encoding="utf-8"?> 
<!-- Copyright (C) 2009 The Android Open Source Project 

    Licensed under the Apache License, Version 2.0 (the "License"); 
    you may not use this file except in compliance with the License. 
    You may obtain a copy of the License at 

      http://www.apache.org/licenses/LICENSE-2.0 

    Unless required by applicable law or agreed to in writing, software 
    distributed under the License is distributed on an "AS IS" BASIS, 
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
    See the License for the specific language governing permissions and 
    limitations under the License. 
--> 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content"> 
    <TextView android:text="@+id/contactEntryText" 
       android:id="@+id/contactEntryText" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content"/> 
</LinearLayout> 
+0

哪個佈局項目您使用的每個元素的? –

+0

發佈您的項目佈局xml文件。否則,只需在項目佈局的xml文件中增加textView的大小即可。它會在你的'ListView' – Praveenkumar

+0

佈局中提供更大尺寸的文本? -----> ListView –

回答

2

設置TextView中的這個屬性android:textSize="10dip"到contact_entry.xml,它會解決你的問題。

+0

創建後,行android:textSize =「10」說法如下: 錯誤:錯誤:整數類型不允許(在'textSize'值爲 '10')。 –

+0

我可以再問你一個愚蠢的問題嗎?我是新來的android和我有一個contactmanager.java,現在使用contactmanager.xml,所以我如何在你的simplest_list_item_1.xml添加? –

+0

@SeanTan您的問題的XML代碼來自contactmanager.xml文件? –

0

它始終是更好地設定文字的大小在SP(SP獨立地相對於所述設備的。正常字體大小縮放),也可以使用android:textAppearance="?android:attr/textAppearanceLarge

相關問題