我想将String值传递给我的自定义listview适配器类。我是按照下面的代码做的,但它没有用。
MainActivity.java
private ArrayList<Item> generateData(String book_name)
{
MyAdapter adapter=new MyAdapter(getApplicationContext(),null);
adapter.message = "hello";
MyAdapter.java
public class MyAdapter extends ArrayAdapter<Item> {
public String message;
然后在getView
中@Override
public View getView(int position, View convertView, ViewGroup parent)
{
title.setText(itemsArrayList.get(position).getTitle());
if(message == "hello")
{
//do something here
}
感谢您的帮助
答案 0 :(得分:1)
我认为正在发生的是你创建在设置消息之前调用getView的适配器。因此,在您的自定义适配器中,您可以更改构造函数,以便接收消息。
<?
session_start();
session_regenerate_id();
if(!isset($_SESSION['user'])){
header("Location: ../index.php");
exit;
}
if(isset($_POST["submit"])){
include_once'../../config.php';
try {
$dbh = new PDO("mysql:host=$hostname;dbname=dashboardr",$username,$password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // <== add this line
$sql = "INSERT INTO doc_list (doc_title, doc_content, doc_created, user_id, cat_no) VALUES ('".$_POST["doc_title"]."','".$_POST["doc_content"]."',NOW(), '".$_SESSION['user']."','".$_POST['cat_no']."')";
print_r($_POST);
if ($dbh->query($sql)) {
header ('Location: ../docList.php?success=1');
}
else{
}
$dbh = null;
}
catch(PDOException $e)
{
echo $e->getMessage();
}
}
?>
答案 1 :(得分:0)
问题是你的字符串比较是错误的。您应该使用equals
方法而不是==
。因此,比较线应如下所示:
if ("hello".equals(message)) {
//your code here
}