如何将小部件添加到appcelerator应用程序?

时间:2016-06-15 07:11:39

标签: appcelerator appcelerator-alloy

我有一个合金项目。 (1.8或更高)。

所以,我想在我的应用程序中添加一个小部件(滑块菜单)。然后,我从这个链接下载了小部件

Slider menu

我已解压缩文件夹,并且已在我的应用程序下复制并粘贴小部件文件夹。

所以我的项目有这种情况:

enter image description here

我还在config.json中添加了一个代码:

<?php
namespace Project\SomeBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;

/**
 * MyEntity
 *
 * @ORM\Table(name="my_entity")
 * @ORM\Entity(repositoryClass="Project\SomeBundle\Entity\Repository\MyEntityRepository")
 */
class MyEntity
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="name", type="string", length=255)
     * @Assert\Length(max="255")
     */
    private $name;

    /**
     * @var Item[]|Collection
     *
     * @ORM\OneToMany(targetEntity="Project\SomeBundle\Entity\Item", mappedBy="itemType", cascade={"remove"}, fetch="EXTRA_LAZY")
     */
    protected $items;

    // [...]


    /**
     * Get some data
     *
     * @return string
     */
    public function getSomeData()
    {
        $result = null;
        try {
            $result = $this->getName() . ' - ' . $this->getItems()->last()->getGroup()->getCode();
        }
        catch(\Exception $exception) {
            $result = $this->getName();

            $logFile = fopen('/tmp/error.log', 'a');
            fwrite($logFile, $exception->getMessage());
            fclose($logFile);
        }

        return $result;
    }
}

但是如果我尝试启动我的应用程序,我会收到以下错误消息:

{
    "global": {},
    "env:development": {},
    "env:test": {},
    "env:production": {},
    "os:android": {},
    "os:blackberry": {},
    "os:ios": {},
    "os:mobileweb": {},
    "os:windows": {},
    "dependencies": {
        "com.slider":"1.0"
    }
}

1 个答案:

答案 0 :(得分:3)

您需要注意两点:

  1. 小部件文件夹必须位于app文件夹中。 (你把它放在资产中)。

  2. 在config.json中, com.slider 必须是widget.json中存在的widget的id,或者查找widget.json并从那里复制id。

  3. 您面临的唯一问题是命名约定。