当我尝试绘制圆圈时,屏幕上没有任何内容

时间:2017-09-24 16:59:05

标签: android xml geometry

这是我的MainActivity文件代码:

    public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show();
            }
        });
    }
}

这是我的activity_main.xml代码:

     <?xml version="1.0" encoding="utf-8"?>
      <android.support.design.widget.CoordinatorLayout 
       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:layout_width="match_parent"
        android:layout_height="match_parent"

       tools:context="com.example.vinaykumar.sample.MainActivity">


    <android.support.design.widget.AppBarLayout

        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>

    <include layout="@layout/content_main" />


    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="@dimen/fab_margin"
        app:srcCompat="@android:drawable/ic_dialog_email" />

    <View android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_centerInParent="true"
        android:background="@drawable/myfile"/>
     </android.support.design.widget.CoordinatorLayout>

这是我的myfile.xml代码(我在其中创建一个圆圈)

  <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>

    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval">
        <stroke
            android:width="1dp"
            android:color="#78d9ff"/>
    </shape>
</item>
</selector>

以上是文件位置enter image description here

的图像

我的问题是,当我运行程序时,它不会在屏幕上显示任何内容或不创建圆圈。我是android新手,所以我不知道自己做错了什么。对不起,如果它有很多代码,但我认为如果我在程序中显示所有内容,它会更清楚。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

<强>错误:

1)您在工具栏上显示可绘制的方式不正确。

2)您设计的可绘制文件为您提供 OVAL 形状而不是 CIRCLE 形状。

我的解决方案:

  

解决方案1) Xml代码:

 <?xml version="1.0" encoding="utf-8"?>
    <android.support.design.widget.CoordinatorLayout
        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:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">


      <android.support.design.widget.AppBarLayout
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
         >


 <!-----------------  THIS IS TOOLBAR TAG, you're using ---------------------->
        <android.support.v7.widget.Toolbar                   
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            >

        <View android:layout_width="50dp"
            android:layout_height="50dp"
            android:layout_centerInParent="true"
            android:background="@drawable/myfile"/>

 </android.support.v7.widget.Toolbar>


      </android.support.design.widget.AppBarLayout>



      <android.support.design.widget.FloatingActionButton
          android:id="@+id/fab"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="bottom|end"
          android:layout_margin="40dp"
          app:srcCompat="@android:drawable/ic_dialog_email" />

    </android.support.design.widget.CoordinatorLayout>
  

解决方案2) myfile.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>

    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval">
        <stroke
            android:width="1dp"
            android:color="#78d9ff"/>

        <size
            android:width="120dp"
            android:height="120dp"/>
    </shape>
</item>
</selector>

&LT; --------------------------------------------- -------------------------------------------------- ------------------------------&GT;

  

会话后编辑的代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout  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:layout_width="match_parent"
    android:layout_height="match_parent">

             <View android:layout_width="50dp"
                    android:layout_height="50dp"
                    android:layout_centerInParent="true"
                    android:layout_centerInParent="true"
                    android:background="@drawable/myfile"/>

 </RelativeLayout>

<强> MainActivity.java: -

  public class MainActivity extends AppCompatActivity  {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

    }

<强> myfile.xml中: -

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>

    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval">
        <stroke
            android:width="1dp"
            android:color="#78d9ff"/>

        <size
            android:width="120dp"
            android:height="120dp"/>
    </shape>
</item>
</selector>