用java写一个安卓的问卷调查app要求有添加和删减问题的功能
时间: 2023-05-13 09:05:24 浏览: 55
好的,这个问题可以回答。要实现添加和删除问题的功能,可以使用动态布局和列表视图。首先,创建一个包含问题和选项的布局,然后将其添加到列表视图中。当用户点击添加问题按钮时,动态创建一个新的布局并将其添加到列表视图中。当用户点击删除问题按钮时,从列表视图中删除相应的布局。在Java中,可以使用Android SDK提供的布局和视图类来实现这个功能。
相关问题
用java写一个安卓的问卷调查app要求有添加和删减问题的功能可以写出代码吗
当然可以,以下是一个简单的示例代码:
```
import java.util.ArrayList;
public class Questionnaire {
private ArrayList<String> questions;
public Questionnaire() {
questions = new ArrayList<String>();
}
public void addQuestion(String question) {
questions.add(question);
}
public void removeQuestion(int index) {
questions.remove(index);
}
public void printQuestions() {
for (int i = 0; i < questions.size(); i++) {
System.out.println((i+1) + ". " + questions.get(i));
}
}
public static void main(String[] args) {
Questionnaire q = new Questionnaire();
q.addQuestion("What is your name?");
q.addQuestion("How old are you?");
q.addQuestion("What is your favorite color?");
q.printQuestions();
q.removeQuestion(1);
q.printQuestions();
}
}
```
这个代码演示了如何使用 ArrayList 来存储问题,并且提供了添加和删除问题的功能。在这个例子中,我们使用了 printQuestions() 方法来打印出所有的问题。当然,你可以根据自己的需求来修改这个代码。
用java代码 编写一个安卓app 功能包含 添加候选人 进行投票 显示结果
当然,我可以为你提供一个基本的Android app代码示例,该示例具有添加候选人、进行投票和显示结果的功能。以下是一个基本的投票Android app的代码框架:
首先,在`MainActivity.java`文件中,我们将处理应用程序的主要逻辑和用户界面:
```java
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
private EditText candidateNameEditText;
private Button addCandidateButton;
private EditText voteEditText;
private Button voteButton;
private TextView resultTextView;
private Map<String, Integer> candidates;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
candidateNameEditText = findViewById(R.id.editTextCandidate);
addCandidateButton = findViewById(R.id.buttonAddCandidate);
voteEditText = findViewById(R.id.editTextVote);
voteButton = findViewById(R.id.buttonVote);
resultTextView = findViewById(R.id.textViewResult);
candidates = new HashMap<>();
addCandidateButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String candidateName = candidateNameEditText.getText().toString();
addCandidate(candidateName);
candidateNameEditText.setText("");
}
});
voteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String candidateName = voteEditText.getText().toString();
voteForCandidate(candidateName);
voteEditText.setText("");
}
});
}
public void addCandidate(String candidateName) {
if (!candidateName.isEmpty()) {
candidates.put(candidateName, 0);
resultTextView.setText("");
}
}
public void voteForCandidate(String candidateName) {
if (!candidateName.isEmpty()) {
if (candidates.containsKey(candidateName)) {
int currentVotes = candidates.get(candidateName);
candidates.put(candidateName, currentVotes + 1);
resultTextView.setText("");
} else {
resultTextView.setText("Invalid candidate!");
}
}
}
public void displayResults(View view) {
StringBuilder result = new StringBuilder();
for (Map.Entry<String, Integer> entry : candidates.entrySet()) {
result.append(entry.getKey()).append(": ").append(entry.getValue()).append(" votes\n");
}
resultTextView.setText(result.toString());
}
}
```
然后,在`activity_main.xml`文件中,我们可以设置应用程序的用户界面布局。这是一个简单的示例布局,你可以根据自己的需求进行更改和扩展:
```xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="16dp"
android:paddingTop="16dp"
android:paddingRight="16dp"
android:paddingBottom="16dp"
tools:context=".MainActivity">
<TextView
android:id="@+id/textViewCandidate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Candidate Name:"
android:layout_marginTop="16dp"/>
<EditText
android:id="@+id/editTextCandidate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/textViewCandidate"
android:layout_marginTop="16dp"/>
<Button
android:id="@+id/buttonAddCandidate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/editTextCandidate"
android:layout_marginTop="16dp"
android:text="Add Candidate"/>
<TextView
android:id="@+id/textViewVote"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Vote for Candidate:"
android:layout_below="@id/buttonAddCandidate"
android:layout_marginTop="16dp"/>
<EditText
android:id="@+id/editTextVote"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/textViewVote"
android:layout_below="@id/buttonAddCandidate"
android:layout_marginTop="16dp"/>
<Button
android:id="@+id/buttonVote"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Vote"
android:layout_below="@id/editTextVote"
android:layout_marginTop="16dp"/>
<Button
android:id="@+id/buttonDisplayResults"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Display Results"
android:onClick="displayResults"
android:layout_below="@id/buttonVote"
android:layout_marginTop="16dp"/>
<TextView
android:id="@+id/textViewResult"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@android:color/black"
android:layout_below="@id/buttonDisplayResults"
android:layout_marginTop="16dp"/>
</RelativeLayout>
```
以上代码提供了一个基本的投票Android app,它包含添加候选人、进行投票和显示结果的功能。你可以根据自己的需求进行进一步的定制和扩展。希望这对你有所帮助!如果你有任何其他问题,请随时提问。