用的是android studio 3.0.1版本,有个问题求教下。。
建立了一个project
activity_main.xml的代码如下
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.activitylifecycletest.MainActivity"
>
<Button
android:id="@+id/btn_normal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="btnNormal" />
<Button
android:id="@+id/btn_dialog"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="btnDialog"/>
</android.support.constraint.ConstraintLayout>
问题1:为什么书上看到建立这2个button是上下紧挨着排列的,而我的2个button重叠了?
然后,MainActivity代码如下:
public class MainActivity extends AppCompatActivity {
public static final String tag = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(tag,"OnCreate");
setContentView(R.layout.activity_main);
Button btnNormal = (Button) findViewById(R.id.btn_normal);
}
}
问题2:为什么我的 (Button) findViewById(R.id.btn_normal)在R.id.后面自动带不出来?我手动添加进去的显示是btn_normal红色?也就是未找到这个button。我之前还有个test的project,一样的写法啊,但是那个Project就能好好的带出来。
球解答。。。谢谢
3 个解决方案
#1
问题一:因为这是约束布局,仔细看好根布局的类型。不添加约束就是全部堆在左上角,宽度一致,自然就重叠了。
问题二:应该是R文件没有导入,所以导致红色,导入R文件后显示会正常。推荐设置自动导包。
按图设置,自动导包。就没有这种红字情况了。
问题二:应该是R文件没有导入,所以导致红色,导入R文件后显示会正常。推荐设置自动导包。
按图设置,自动导包。就没有这种红字情况了。
#2
1.android.support.constraint.ConstraintLayout是谷歌的新布局控件,你改成LinearLayout就是上下排列的了。
2.只要id正确,直接运行就行,可能没有R文件没有更新,可以build下就可以点出来了。
2.只要id正确,直接运行就行,可能没有R文件没有更新,可以build下就可以点出来了。
#3
感谢2位。。
#1
问题一:因为这是约束布局,仔细看好根布局的类型。不添加约束就是全部堆在左上角,宽度一致,自然就重叠了。
问题二:应该是R文件没有导入,所以导致红色,导入R文件后显示会正常。推荐设置自动导包。
按图设置,自动导包。就没有这种红字情况了。
问题二:应该是R文件没有导入,所以导致红色,导入R文件后显示会正常。推荐设置自动导包。
按图设置,自动导包。就没有这种红字情况了。
#2
1.android.support.constraint.ConstraintLayout是谷歌的新布局控件,你改成LinearLayout就是上下排列的了。
2.只要id正确,直接运行就行,可能没有R文件没有更新,可以build下就可以点出来了。
2.只要id正确,直接运行就行,可能没有R文件没有更新,可以build下就可以点出来了。
#3
感谢2位。。