我刚刚创建了一个新的Android应用程序,所以我只有MainActivity.java文件及其相应的xml布局文件(activity_main.xml)。 activity_main.xml文件的内容为:
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnCount="2"
android:orientation="vertical"
android:rowCount="2" >
<Button
android:id="@+id/blueButton"
android:background="#236B8E" />
<Button
android:id="@+id/redButton"
android:background="#FF0000" />
<Button
android:id="@+id/yellowButton"
android:background="#FFFF00" />
<Button
android:id="@+id/greenButton"
android:background="#00FF00" />
</GridLayout>
当我运行应用程序时,我看到的只是一个白色屏幕,顶部是“主要活动”栏。我的xml文件有什么问题吗?
答案 0 :(得分:0)
<Button android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Translate"
android:background="#00FF00"
/>
将所有这些属性添加到按钮中。您就完成了。
答案 1 :(得分:0)
如果你想在gridview中有红色,蓝色,绿色和黄色按钮作为每个项目,那么你必须为它写一个单独的xml文件。在适配器中使用该xml文件,您可以将这些按钮填充为gridView中的每个项目。
有关如何执行此操作的详细信息已在here中得到很好的解释。
答案 2 :(得分:0)
首先从java文件中输入一些代码。 你有setContentview吗? 这个XML代码很好,它可以正常工作..
试试这个
XML:
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridView1"
android:numColumns="auto_fit"
android:gravity="center"
android:columnWidth="50dp"
android:stretchMode="columnWidth"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</GridView>
JAVA CODE:
import android.app.Activity;
import android.os.Bundle;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.GridView;
import android.widget.TextView;
import android.widget.Toast;
import android.view.View;
import android.widget.AdapterView.OnItemClickListener;
public class GridViewActivity extends Activity {
GridView gridView;
static final String[] numbers = new String[] {
"A", "B", "C", "D", "E",
"F", "G", "H", "I", "J",
"K", "L", "M", "N", "O",
"P", "Q", "R", "S", "T",
"U", "V", "W", "X", "Y", "Z"};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.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 OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v,
int position, long id) {
Toast.makeText(getApplicationContext(),
((TextView) v).getText(), Toast.LENGTH_SHORT).show();
}
});
}
}
答案 3 :(得分:0)
这里的代码没有问题,我尝试创建新的应用程序项目,它运行得很好。你正确设置API级别,最低API级别14设置为使用GridLayout。你有没有在你的java代码中为这个布局设置setContentView
答案 4 :(得分:0)
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridView1"
android:numColumns="auto_fit"
android:gravity="center"
android:columnWidth="50dp"
android:stretchMode="columnWidth"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</GridView>