要实现Android EditText向上展开的效果,可以使用以下代码示例:
public class MainActivity extends AppCompatActivity {
private EditText editText;
private ImageButton expandButton;
private boolean isExpanded = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText = findViewById(R.id.editText);
expandButton = findViewById(R.id.expandButton);
expandButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (isExpanded) {
collapseEditText();
} else {
expandEditText();
}
}
});
}
private void expandEditText() {
editText.setMaxLines(Integer.MAX_VALUE);
expandButton.setImageResource(R.drawable.ic_expand_less);
isExpanded = true;
}
private void collapseEditText() {
editText.setMaxLines(1);
expandButton.setImageResource(R.drawable.ic_expand_more);
isExpanded = false;
}
}
这样,当点击展开按钮时,EditText将展开或收起,并相应地更改展开按钮的图标。