使用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

显然你需要做自定义

希望这可以帮助