gridview

时间:2015-12-13 23:47:00

标签: java android gridview

如何更改gridview中文本的大小?

public class MainActivity extends Activity {

  GridView gridView; 

  static final String[] numbers = new String[]{
        "A", "B", "C", "D", "E",
        "F", "G", "H"}; 

  private GoogleApiClient client; 

  @Override 
  public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState); 

    setContentView(R.layout.activity_main); 

    gridView = (GridView) findViewById(R.id.gridView1);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, numbers);

    gridView.setAdapter(adapter);

    gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View v,
                                int position, long id) {
            ((TextView) v).setTextSize(30);

            Toast.makeText(getApplicationContext(),
                    ((TextView) v).getText(), Toast.LENGTH_SHORT).show();

        }

    });

我无法在xml中更改文本大小,因为我没有TextView,只有GridView。我可以在onclick方法中更改文本,但我无法在加载时更改字体大小。

1 个答案:

答案 0 :(得分:4)

要更改TextView中文本的外观,您只需使用自己的XML布局资源而不是标准android.R.simple_list_item_1。标准资源can be found here的来源。您可以从类似的东西开始(甚至只是复制代码)作为项目中的布局资源,然后修改它,直到您的文本看起来像您想要的那样。

假设您的资源名为R.layout.my_text_view_item。您可以通过将创建适配器的行更改为

来在网格视图中使用它
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            R.layout.my_text_view_item, numbers);

使用类似ArrayAdapter的类,这通常是修改单个元素的“外观”的最简单方法。

要获得更多高级功能,您可以考虑扩展BaseAdapterSimpleAdapter