使用EditText材质设计的工具栏

我正在尝试使用EditText制作工具栏,如下所示:

带有EditText的工具栏

现在我可以做类似的事情,但只有静态标题,任何想法开始?

    我这样做如下:

    在此处输入图像描述

    Toolbar作为AppBar (又名ActionBar )位于其下方的顶部和第二个工具栏上,带有两个EditText 。 第一个工具栏位于CollapsingToolbarLayout下,以防您希望CollapsingToolbarLayout它。

    Java

     public class MainActivity extends AppCompatActivity { Toolbar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); toolbar = (Toolbar) findViewById(R.id.toolbar_1); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setTitle(""); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } } 

    activity_main.xml

                       

    Colors

       #303F9F #3F51B5 #00E5FF  

    styles.xml

         

    使用android:theme="@style/AppTheme"用于清单中的应用程序和android:theme="@style/AppTheme.Base" for MainActivity`。

    我认为您需要创建自己的toolbarlyout并将其设置为活动工具栏。 尝试这个 :

    http://javatechig.com/android/actionbar-with-custom-view-example-in-android你只需要创建你的组件。 我希望这对你有所帮助;)

    您可以使用与工具栏颜色相同的线性布局。 工具栏属性android:elevation需要为0px

    活动(xml)

         

    工具栏(xml)

        

    片段(xml)

               

    活动(java)

     public class TaskActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); initializeTodo(savedInstanceState); setContentView(R.layout.activity_task); //set the toolbar setSupportActionBar((Toolbar) findViewById(R.id.toolbar)); getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setTitle(null); } 

    结果:

    在此处输入图像描述

    AppBarLayout是最好的选择

    参考https://developer.android.com/reference/android/support/design/widget/AppBarLayout.html

    示例http://www.feelzdroid.com/2015/07/android-appbarlayout-scrolling-example.html

    显然你需要做自定义

    希望这可以帮助